<?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>Hello World!</title>
	<atom:link href="http://blog.wilgucki.pl/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.wilgucki.pl</link>
	<description>++++++++++[&#62;+++++++&#62;++++++++++&#62;+++&#62;+&#60;&#60;&#60;&#60;&#8722;]&#62;++.&#62;+.+++++++..+++.&#62;++.&#60;&#60;+++++++++++++++.&#62;.+++.&#8722;&#8722;&#8722;&#8722;&#8722;&#8722;.&#8722;&#8722;&#8722;&#8722;&#8722;&#8722;&#8722;&#8722;.&#62;+.&#62;.</description>
	<lastBuildDate>Mon, 20 Feb 2012 13:39:06 +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>Nadchodzi PhpStorm w wersji 4</title>
		<link>http://blog.wilgucki.pl/2012/02/nadchodzi-phpstorm-w-wersji-4.html</link>
		<comments>http://blog.wilgucki.pl/2012/02/nadchodzi-phpstorm-w-wersji-4.html#comments</comments>
		<pubDate>Mon, 20 Feb 2012 13:39:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Narzędzia]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2104</guid>
		<description><![CDATA[Firma JetBrains odpowiedzialna za jedno z najlepszych IDE dla PHP ogłosiła właśnie rozpoczęcie Early Access Program (EAP), którego celem jest wydanie kolejnej wersji PhpStorm. W udostępnionej właśnie wersji pojawi się kilka ważnych usprawnień, które na pewno ucieszą użytkowników tego narzędzia. &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/02/nadchodzi-phpstorm-w-wersji-4.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Firma JetBrains odpowiedzialna za jedno z najlepszych IDE dla PHP ogłosiła właśnie rozpoczęcie Early Access Program (EAP), którego celem jest wydanie kolejnej wersji PhpStorm. W udostępnionej właśnie wersji pojawi się kilka ważnych usprawnień, które na pewno ucieszą użytkowników tego narzędzia.</p>
<p>Do najważniejszych można zaliczyć:</p>
<ul>
<li>wykorzystanie platformy IntelliJ 11.1, czyli będzie szybciej i ładniej</li>
<li>dodanie wsparcia dla PHP 5.4, m.in dla traitsów</li>
<li>pokrycie kodu będzie działać dla Xdebuga oraz Zend Debuggera</li>
<li>debugger będzie obsługiwał wbudowany w PHP 5.4 serwer</li>
<li>wsparcie dla ECMA Script 6</li>
<li>lepsze wsparcie dla SASS, LESS oraz CoffeeScript</li>
<li>generowanie projektu na podstawie HTML5 boilerplate oraz NodeJS boilerplate</li>
</ul>
<p>Więcej informacji znajdziecie w komunikacie opublikowanym na <a href="http://blog.jetbrains.com/webide/2012/02/phpstorm-webstorm-4-0-early-access-program-started/" rel="nofollow" target="_blank">oficjalnym blogu PhpStorm</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/02/nadchodzi-phpstorm-w-wersji-4.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Jak dobrze znasz CSS3?</title>
		<link>http://blog.wilgucki.pl/2012/02/jak-dobrze-znasz-css3.html</link>
		<comments>http://blog.wilgucki.pl/2012/02/jak-dobrze-znasz-css3.html#comments</comments>
		<pubDate>Mon, 20 Feb 2012 07:00:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2100</guid>
		<description><![CDATA[Nettuts+ zaserwował nam kolejny quiz na temat wiedzy o CSS. Tym razem na warsztat trafił CSS3. Niestety nie popisałem się i osiągnąłem wyjątkowo słaby wynik – nieco ponad 54%. Napiszcie w komentarzu jak wam poszło.]]></description>
			<content:encoded><![CDATA[<p>Nettuts+ zaserwował nam kolejny quiz na temat wiedzy o CSS. Tym razem na warsztat trafił CSS3. Niestety nie popisałem się i osiągnąłem wyjątkowo słaby wynik – nieco ponad 54%. Napiszcie w komentarzu jak wam poszło.</p>
<p><a href="http://net.tutsplus.com/articles/nettuts-quiz-10-basic-css3-techniques/" rel="nofollow" target="_blank"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blog.wilgucki.pl/wp-content/uploads/2012/02/image2.png" width="520" height="416" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/02/jak-dobrze-znasz-css3.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Co nowego w Socl?</title>
		<link>http://blog.wilgucki.pl/2012/02/co-nowego-w-socl.html</link>
		<comments>http://blog.wilgucki.pl/2012/02/co-nowego-w-socl.html#comments</comments>
		<pubDate>Fri, 17 Feb 2012 20:00:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2097</guid>
		<description><![CDATA[Buzz wokół Socl, społecznościowej wyszukiwarki Microsoftu, nieco przycichł, ale w niczym to nie przeszkadza jego twórcom we wprowadzaniu kolejnych usprawnień. Zalogowałem się do serwisu szukając nowych funkcjonalności i okazało się, że jednak coś się z Socl dzieje. Pierwszą zmianą jaka &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/02/co-nowego-w-socl.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Buzz wokół <a href="http://www.so.cl/" rel="nofollow" target="_blank">Socl</a>, społecznościowej wyszukiwarki Microsoftu, nieco przycichł, ale w niczym to nie przeszkadza jego twórcom we wprowadzaniu kolejnych usprawnień. Zalogowałem się do serwisu szukając nowych funkcjonalności i okazało się, że jednak coś się z Socl dzieje. Pierwszą zmianą jaka rzuca się w oczy, to możliwość skorzystania z Windows Live ID podczas logowania. Konto na Facebooku nie jest już wymagane do korzystania z serwisu.</p>
<p><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blog.wilgucki.pl/wp-content/uploads/2012/02/image1.png" width="371" height="147" /></p>
<p>Ciekawą zmianą wydaje się być dodanie nowej akcji, jaką możemy wykonać w odpowiedzi na czyjś post. Nowa funkcja nosi nazwę Riff i pozwala na udostępnienie czyjegoś wpisu w naszym “strumieniu”. W sumie nie ma z czego się cieszyć, przecież udostępnianie czyichś wpisów jest dostępne w każdej innej społecznościówce. Niemniej zmiana ta pozwoli na nieco większe zaangażowanie testującej społeczności. Więcej na ten temat przeczytamy w <a href="http://blog.fuselabs.org/post/17773913754/introducing-so-cl-riffs" rel="nofollow" target="_blank">oficjalnej notce</a>, zamieszczonej na blogu Fuse Labs.</p>
<p>Zmiany pojawiły się również w ustawieniach, które do tej pory nie powalały na kolana i zamykały się w obrębie warstwy otwieranej po kliknięciu w nasz awatar. Teraz pojawiają się jako osobna strona i nieco przypominają ustawienia znane z przeglądarki Chrome.</p>
<p>I to by było na tyle. Nie zauważyłem żadnych innych usprawnień, może poza nieco lepszym działaniem całego serwisu. Jeśli chcielibyście przetestować Socl na własnej skórze, mam kilka zaproszeń do rozdania.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/02/co-nowego-w-socl.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AppFog na gorąco</title>
		<link>http://blog.wilgucki.pl/2012/02/appfog-na-goraco.html</link>
		<comments>http://blog.wilgucki.pl/2012/02/appfog-na-goraco.html#comments</comments>
		<pubDate>Thu, 16 Feb 2012 20:09:26 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[AppFog]]></category>
		<category><![CDATA[Node.js]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[PHP Fog]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[To the cloud]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2092</guid>
		<description><![CDATA[Odbierając dzisiaj pocztę, najmniej się spodziewałem informacji o uzyskaniu dostępu do wersji beta AppFog, o którym szczerze mówiąc, powoli zaczynałem zapominać. Na szczęście okazało się, że nie zapomniano o mnie i w mojej skrzynce wylądowało zaproszenie do nowej chmury, pozwalającej &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/02/appfog-na-goraco.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Odbierając dzisiaj pocztę, najmniej się spodziewałem informacji o uzyskaniu dostępu do wersji beta AppFog, o którym szczerze mówiąc, powoli zaczynałem zapominać. Na szczęście okazało się, że nie zapomniano o mnie i w mojej skrzynce wylądowało zaproszenie do nowej chmury, pozwalającej korzystać z dobrodziejstw nowych “zabawek” dla developerów.</p>
<p><img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="appfog" border="0" alt="appfog" src="http://blog.wilgucki.pl/wp-content/uploads/2012/02/appfog.jpg" width="520" height="242" /></p>
<p>Ochocza zabrałem się do testowania i muszę przyznać, że coś w tym jest. Ponieważ opisuję wszystko “na gorąco”, część informacji może okazać się niepoprawna lub nieaktualna, ale mam nadzieję, że wybaczycie mi ten brak profesjonalizmu <img src='http://blog.wilgucki.pl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Po zalogowaniu się do panelu administracyjnego otrzymujemy dostęp do wszelkich możliwych ustawień oraz informacji o naszym koncie. Warto od razu zaznaczyć, że na czas beta testów korzystanie z AppFog jest bezpłatne. Nie ma jednak co się cieszyć, ponieważ ekipa odpowiedzialna za chmurę wyraźnie zaznaczyła, iż nie powinniśmy stawiać produkcyjnych aplikacji – w końcu to tylko beta.</p>
<p><a href="http://blog.wilgucki.pl/wp-content/uploads/2012/02/appfog-admin.png" target="_blank" rel="lightbox[2092]" title="appfog-admin"><img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="appfog-admin" border="0" alt="appfog-admin" src="http://blog.wilgucki.pl/wp-content/uploads/2012/02/appfog-admin_thumb.png" width="520" height="235" /></a></p>
<p>Z poziomu panelu administracyjnego możemy przede wszystkim utworzyć nową aplikację.</p>
<p><a href="http://blog.wilgucki.pl/wp-content/uploads/2012/02/image.png" target="_blank" rel="lightbox[2092]" title="image"><img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blog.wilgucki.pl/wp-content/uploads/2012/02/image_thumb.png" width="520" height="415" /></a></p>
<p>Możemy stworzyć własną aplikację lub skorzystać z już gotowej. Niestety wyboru nie mamy zbyt dużego – Nwiki (aplikacja oparta o Node.js, korzystająca z MongoDB), WordPress (raczej nie wymaga wyjaśnień) oraz RSM Browser (przeglądarka zasobów MongoDB napisana w Ruby).</p>
<p>Ponieważ Node.js oraz Ruby znam o wiele gorzej niż PHP, wybrałem WordPressa. Instalacja zajęła nie więcej niż kilkanaście sekund i po chwili mogłem zabrać się za konfigurację bloga. Od strony administracyjnej niczym się on nie różni od WordPressa hostowanego na każdym innym hostingu. Może działa nieco szybciej. Zaktualizowałem WP do najnowszej wersji, zaktualizowałem pluginy oraz skórki i nie pojawiły się żadne problemy.</p>
<p>Korzystając z okazji, że za wersję beta nie trzeba płacić, poszalałem z zasobami serwera oraz ustawieniami aplikacji. Okazało się, że można uruchomić do 10 instancji aplikacji, skierować własną domenę na aplikację oraz przydzielić do 2 GB pamięci. Ponadto otrzymujemy do dyspozycji bazę Mysql w wersji 5.1 oraz MongoDB w wersji 1.8. Poza tym możemy dodać własne zmienne środowiskowe oraz aktualizować aplikację przy pomocy Gita i Githuba.</p>
<p>Ciekawie zapowiada się narzędzie uruchamiane z wiersza poleceń. Jedyne co musimy zrobić to zainstalować gem-a (tak, bez Ruby się nie obejdzie), pozwalającego na kompleksowe zarządzanie usługą.</p>
<p>Na koniec napiszę, że technologie z jakich możemy korzystać to Rails, Spring, Grails, Lift, Roo, JavaWeb, Sinatra, Node, PHP or Erlang/OTP Rebar. W połączeniu z MySQL oraz MongoDB, otrzymujemy zestaw narzędzi, który w większości przypadków powinien wystarczyć do utworzenia porządnej aplikacji.</p>
<p>Nieodzownym elementem każdej bety jest forum oraz issue tracker. Na pewno pojawią się na nim moje uwagi, ponieważ już na samym początku pojawiło się kilka problemów, takich jak błędy podczas instalacji gem-a oraz kilka mniejszych drobiazgów.</p>
<p>AppFog zapowiada się na co najmniej interesującą usługę, jeśli nie “killera” innych chmur i całkiem możliwe, że w najbliższym czasie będzie wyznaczał trendy w tej dziedzinie. Wracam do testowania, a o kolejnych wrażeniach napiszę niebawem.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/02/appfog-na-goraco.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Warsztat programisty PHP &#8211; IDE</title>
		<link>http://blog.wilgucki.pl/2012/01/warsztat-programisty-php-ide.html</link>
		<comments>http://blog.wilgucki.pl/2012/01/warsztat-programisty-php-ide.html#comments</comments>
		<pubDate>Mon, 16 Jan 2012 07:00:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2082</guid>
		<description><![CDATA[Kilka miesięcy temu popełniłem wpis zatytułowany Warsztat programisty PHP, w którym wymieniłem najważniejsze narzędzia jakimi posługuje się (powinien posługiwać się) programista PHP. Dzisiejszy wpis będzie stanowił rozwinięcie zawartym w nich informacji. Na pierwszy ogień idzie IDE. Czasy, w których do &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/01/warsztat-programisty-php-ide.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Kilka miesięcy temu popełniłem wpis zatytułowany <a href="http://blog.wilgucki.pl/2011/11/warsztat-programisty-php.html" target="_blank">Warsztat programisty PHP</a>, w którym wymieniłem najważniejsze narzędzia jakimi posługuje się (powinien posługiwać się) programista PHP. Dzisiejszy wpis będzie stanowił rozwinięcie zawartym w nich informacji. Na pierwszy ogień idzie IDE.</p>
<p>Czasy, w których do tworzenia aplikacji internetowych (nazywanych wtedy stronami) wystarczył notatnik lub dowolny inne nieskomplikowany edytor, minęły bezpowrotnie. Dzisiaj, aby móc pracować nad większością projektów, niezbędne jest IDE, czyli kombajn usprawniający naszą pracę. Na rynku mamy dostępnych co najmniej kilka dobrych aplikacji i nie da się jednoznacznie stwierdzić, która z nich jest najlepsza. Przez długi czas pracowałem na Eclipse, miałem styczność z Netbeansem, a obecnie wszędzie gdzie to możliwe, wykorzystuję PhpStorm.</p>
<p>Co cechuje dobre IDE? Przede wszystkim wygoda w używaniu. IDE nie powinno przeszkadzać programiście, który ginie w gąszczu skrótów klawiaturowych, setek zakładek i milionach ustawień. Dobre IDE musi być gotowe do pracy od razu po instalacji, bez konieczności poświęcania połowy dnia na jego konfigurację. Ważna jest również prędkość jego działania. Sytuacja, w której oczekiwanie na podpowiedź kodu zajmuje więcej czasu niż sprawdzenie w dokumentacji jest niedopuszczalna.</p>
<p>Porządne IDE pozwala na pracę ze wszystkimi sposobami zapisywania danych – systemy kontroli wersji oraz FTP/SFTP. Bez tego będziemy żonglować oknami, co w krótkim czasie spowoduje liczne problemy. Nie można również zapomnieć o najprostszym nawet interfejsie wyświetlającym dane z bazy danych, które co jakiś czas musimy sprawdzić lub zmienić.</p>
<p>Równie istotne jest proste debugowanie kodu. IDE powinno być w stanie wyłapać najczęstsze pomyłki popełniane w kodzie oraz pokazać, w którym miejscu w kodzie źle wstawiliśmy średnik, przecinek, klamrę lub dowolny inny niechciany znak. Poza samym wskazywaniem błędów, istotna jest możliwość korzystania z zaawansowanych debugerów (np. Xdebug).</p>
<p>Na koniec pozostaje możliwość integracji IDE z zewnętrznymi narzędziami wspomagającymi deploy aplikacji na sewer/do chmury, wspomagającymi tworzenie testów, konsolą systemową oraz lokalnym serwerem.</p>
<p>Czy idealne IDE istnieje? Tak. Jakie to IDE? Każdy odpowie, że to, z którego właśnie korzysta. I każdy będzie miał rację. Idealne IDE to taka aplikacja, z którą wygodnie się pracuje, a większość nudnych czynności wykonuje za nas.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/01/warsztat-programisty-php-ide.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Cache&#8217;owanie konfiguracji aplikacji opartej o Zend Framework</title>
		<link>http://blog.wilgucki.pl/2012/01/cacheowanie-konfiguracji-aplikacji-opartej-o-zend-framework.html</link>
		<comments>http://blog.wilgucki.pl/2012/01/cacheowanie-konfiguracji-aplikacji-opartej-o-zend-framework.html#comments</comments>
		<pubDate>Mon, 09 Jan 2012 07:00:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[Zend_Cache]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2075</guid>
		<description><![CDATA[Duże aplikacje napisane w oparciu o Zend Framework zazwyczaj zawierają duży plik konfiguracyjny, niejednokrotnie zapisany w postaci XML. Im większy plik konfiguracyjny, tym wolniej jest on tłumaczony do postaci rozumianej przez PHP. Z tego właśnie względu warto zastosować cache’owanie konfiguracji &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/01/cacheowanie-konfiguracji-aplikacji-opartej-o-zend-framework.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Duże aplikacje napisane w oparciu o Zend Framework zazwyczaj zawierają duży plik konfiguracyjny, niejednokrotnie zapisany w postaci XML. Im większy plik konfiguracyjny, tym wolniej jest on tłumaczony do postaci rozumianej przez PHP. Z tego właśnie względu warto zastosować cache’owanie konfiguracji naszej aplikacji.</p>
<p>Wbrew pozorom nie jest to proces skomplikowany i wymaga jedynie kosmetycznych poprawek w projekcie. Wystarczy utworzyć klasę dziedziczącą po Zend_Application, a w niej przesłonić metodę odpowiedzialną za wczytanie pliku konfiguracyjnego.</p>
<pre class="brush: php">class Batman_Application extends Zend_Application
{
    /**
     * @var null|Zend_Cache_Core
     */
    private $_cache = null;

    /**
     * @var null|string
     */
    private $_configFile = null;

    /**
     * @param string $file
     */
    public function setConfigFile($file)
    {
        $this-&gt;_configFile = $file;
    }

    /**
     * @return null|string
     */
    public function getConfigFile()
    {
        if($this-&gt;_configFile === null) {
            $this-&gt;_configFile = APPLICATION_PATH . '/configs/application.ini';
        }
        return $this-&gt;_configFile;
    }

    /**
     * @param Zend_Cache_Core $cache
     */
    public function setCache(Zend_Cache_Core $cache)
    {
        $this-&gt;_cache = $cache;
    }

    /**
     * @return null|Zend_Cache_Core
     */
    public function getCache()
    {
        if($this-&gt;_cache === null) {
            $this-&gt;_cache = Zend_Cache::factory(
                'File',
                'File',
                array(
                    'master_files' =&gt; array($this-&gt;getConfigFile()),
                    'automatic_serialization' =&gt; true,
                    'lifetime' =&gt; null
                ),
                array(
                    'cache_dir' =&gt; APPLICATION_PATH . '/data/cache'
                )
            );
        }
        return $this-&gt;_cache;
    }

    protected function _loadConfig($file)
    {
        if($this-&gt;_configFile === null) {
            $this-&gt;setConfigFile($file);
        }

        $cache = $this-&gt;getCache();
        $config = $cache-&gt;load('config_cache');
        if(!$config) {
            $config = parent::_loadConfig($file);
            $cache-&gt;save($config, 'config_cache');
        }

        return $config;
    }
}</pre>
<p>Powyższy przykład korzysta z cache’u File, który automatycznie się odświeża, gdy w pliku konfiguracyjnym zostaną wprowadzone zmiany. Nic nie stoi na przeszkodzie aby to zmienić na dowolny inny cache, podobnie z resztą jak backend. Jeśli mamy dostęp do Memcached lub APC, o wiele lepiej będzie tam przechowywać cache, niż w pliku.</p>
<p>Jedyną zmianę jaką należy wprowadzić w już istniejącym kodzie, to modyfikacja pliku index.php, w którym zmieniamy nazwę klasy Zend_Application, na klasę przez nas utworzoną.</p>
<pre class="brush: php">// reszta pliku index.php

require_once 'Zend/Application.php';
require_once 'Batman/Application.php';

// Create application, bootstrap, and run
$application = new Batman_Application(
    APPLICATION_ENV,
    APPLICATION_PATH . '/configs/application.ini'
);
$application-&gt;bootstrap()
            -&gt;run();</pre>
<p>Zanim jednak zdecydujemy się na cache’owanie konfiguracji, lepiej upewnić się, że taka zmiana nam się opłaci. Może się bowiem tak zdarzyć, iż parsowanie pliku z konfiguracją jest szybsze niż sprawdzenie czy cache jest aktualny.</p>
<p>Pliki z kodem źródłowym znajdziecie na <strong><a href="https://github.com/wilgucki/Batman-s-ZF-library" rel="nofollow" target="_blank">Githubie</a></strong>.</p>
<p><strong>Aktualizacja</strong></p>
<p>W komentarzach <strong>melkrom</strong> słusznie zauważył, iż plik konfiguracyjny powinien być pobierany ze zmiennej przekazanej do metody <em>_loadConfig</em>. Dodałem taką możliwość do klasy. Wpis oraz projekt na Githubie zostały zaktualizowane do nowej wersji.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/01/cacheowanie-konfiguracji-aplikacji-opartej-o-zend-framework.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Co się dzieje z Socl?</title>
		<link>http://blog.wilgucki.pl/2012/01/co-sie-dzieje-z-socl.html</link>
		<comments>http://blog.wilgucki.pl/2012/01/co-sie-dzieje-z-socl.html#comments</comments>
		<pubDate>Sat, 07 Jan 2012 09:07:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2072</guid>
		<description><![CDATA[Pod koniec roku 2011 popełniłem artykuł Społecznościowe ramię wyszukiwania Microsoft – Socl od środka, w którym opisałem podstawy działania serwisu społecznościowego Microsoftu. Od tego czasu minęło kilka tygodni, do Socl zalogowałem się kilka razy, kilka razy coś wyszukałem i zamieściłem &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/01/co-sie-dzieje-z-socl.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Pod koniec roku 2011 popełniłem artykuł <a href="http://antyweb.pl/spolecznosciowe-ramie-wyszukiwania-microsoft-socl-od-srodka/" target="_blank">Społecznościowe ramię wyszukiwania Microsoft – Socl od środka</a>, w którym opisałem podstawy działania serwisu społecznościowego Microsoftu. Od tego czasu minęło kilka tygodni, do Socl zalogowałem się kilka razy, kilka razy coś wyszukałem i zamieściłem jako nowy post oraz wymieniłem kilka komentarzy. I już. Socl na więcej nie pozwala, a nawet jeśli, to i tak nie ma z kim tego używać lub po prostu nie chce się tego używać. Czy to oznacza, że Socl to niewypał? Skądże znowu. Jest to dobrze zaprojektowany serwis, z aktywnym supportem odpowiadającym na każde, najgłupsze nawet pytanie. Niestety nie trafił w moje gusta oraz został wydany nieco za wcześnie, ze zbyt małą ilością funkcjonalności.</p>
<p>Odkąd wziąłem w obroty Socl pojawiła się jedna nowa funkcja – podobnie jak w Google+ tytuł strony wyświetlany w zakładce zawiera ilość powiadomień. Reszta nowości pozostaje nadal na papierze, a szkoda, ponieważ kilka z nich mogłoby pomóc w rozwoju serwisu. Mi najbardziej brakuje:</p>
<ul>
<li>aplikacja mobilna – dosyć często pada pytanie o aplikację mobilną, więc nie zdziwiłbym się, gdyby takowa się pojawiła. Na pewno powstanie dla WP7 oraz prawdopodobnie dla iOS. Czy Android doczeka się swojej aplikacji? Ciężko stwierdzić.</li>
<li>wykorzystanie mechanizmu Pinned Sites – IE9 wprowadził bardzo ciekawy mechanizm, nazywający się Pinned Sites. W skrócie – daje on możliwość przypięcia konkretnej strony do paska zadań, wyświetla powiadomienia na przypiętej ikonie oraz daje dostęp do zdefiniowanych wcześniej akcji. Niestety Socl nie korzysta jeszcze z tego mechanizmu. Ma to ulec zmianie.</li>
<li>górny pasek Socl jest nieruchomym nagłówkiem. Google+ jest doskonałym przykładem, jak niewygodne jest (było) to rozwiązanie. W kolejnych wersjach ulegnie to zmianie.</li>
<li>automatyczne aktualizacje treści – tutaj kolejny raz powołam się na przykład Google+, w którym nowe treści pojawiają się od razu. Socl jedynie aktualizuje obszar powiadomień, pozostawiając w naszych rękach odświeżenie strony. Bardzo niewygodne rozwiązanie, które w skończonym czasie zostanie zmienione. Niestety w żadnej z nadchodzących aktualizacji.</li>
<li>integracja z Hotmail i SkyDrive – Socl reklamowany jest jako społecznościowa wyszukiwarka. Może i taki właśnie jest, ale brak jakiejkolwiek integracji z Hotmailem i/lub SkyDrivem, to poważny błąd. Pisząc integracja mam na myśli możliwość konwertowania postów na dokumenty OneNote/Word/PowerPoint, możliwość wysłania posta mailem oraz możliwość dołączania do postów zdjęć/plików ze SkyDrive.</li>
<li>wersje językowe – dużą przeszkodą w korzystaniu z Socl jest bariera językowa. Nie każdy płynnie posługuje się językiem angielskim, a znalezienie kogoś do rozmowy, np. po polsku, graniczy z cudem. To powoduje, że ludzie nie tworzą interesujących treści, a dyskusje zamierają po kilku komentarzach.</li>
</ul>
<p>Nie można również nie wspomnieć o największej bolączce Socl, czyli wyszukiwarce Bing, która poza granicami Stanów Zjednoczonych nie działa najlepiej.</p>
<p>Czy Socl stanie się “the next big thing”? Wątpię. Bardziej prawdopodobne jest, iż zostanie niszowym serwisem wykorzystywanym przez niewielką grupę zapaleńców i potencjalnych odbiorców. Mimo iż początkowo pomysł na Socl wydawał mi się strzałem w dziesiątkę, tak dzisiaj nadal nie widzę siebie jako jego stałego użytkownika. Na pewno znajdą się użytkownicy, w gusta których Socl trafi. Ja do nich raczej nie będę należeć.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/01/co-sie-dzieje-z-socl.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Moje oczekiwania wobec roku 2012</title>
		<link>http://blog.wilgucki.pl/2012/01/moje-oczekiwania-wobec-roku-2012.html</link>
		<comments>http://blog.wilgucki.pl/2012/01/moje-oczekiwania-wobec-roku-2012.html#comments</comments>
		<pubDate>Sun, 01 Jan 2012 16:07:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Ogólne]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2069</guid>
		<description><![CDATA[Pod koniec roku zawsze spotykamy się z licznymi analizami mającymi na celu zaklinanie rzeczywistości oraz udowadnianie, która firma doradcza/analityczna jest najlepsza. Wystarczy wejść na dowolną stronę piszącą o szeroko rozumianym IT, by znaleźć wróżby i przepowiednie. Zrywając z tą tradycją &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/01/moje-oczekiwania-wobec-roku-2012.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Pod koniec roku zawsze spotykamy się z licznymi analizami mającymi na celu zaklinanie rzeczywistości oraz udowadnianie, która firma doradcza/analityczna jest najlepsza. Wystarczy wejść na dowolną stronę piszącą o szeroko rozumianym IT, by znaleźć wróżby i przepowiednie. Zrywając z tą tradycją postanowiłem wymienić moje oczekiwania wobec roku 2012. Nie jest to przewidywanie przyszłości, tylko subiektywna opinia o nadchodzących wydarzeniach.</p>
<ol>
<li><strong>Windows 8</strong> – nowy system operacyjny Microsoftu podbije serca użytkowników podobnie jak zrobił to Windows 7 i nawet Metro UI nie będzie tak męczące na desktopie jak to się wydaje.</li>
<li><strong>Tablet z Windows 8</strong> – kilka firm zapowiedziało stworzenie tabletu działającego pod kontrolą Windows 8. Metro UI sprawdził się w Windows Phone i nie widzę powodu aby nie sprawdziło się na tablecie. iPod killerem raczej nie będzie, ale wprowadzi sporo zamieszania na rynku.</li>
<li><strong>Windows Phone</strong> – mimo usilnych starań, nie zawojuje rynku, ale stanie się trzecią siłą na rynku telefonów obok iPhone’a oraz Androida. Nie zdziwiłbym się, gdyby został zastąpiony Windows 9 (pewnie dowiemy się o tym na jakiejś konferencji – jeden Windows dla telefonów, tabletów i desktopów w roku 2013 lub 2014).</li>
<li><strong>Bing</strong> – w dalszym ciągu mozolnie będzie zdobywał rynek, ale liderowi nie zagrozi. Chciałbym się mylić, ale szczerze wątpię, by się umiędzynarodowił.</li>
<li><strong>Internet Explorer</strong> – IE6 w końcu umrze, a IE7 będzie podążał jego ścieżką. Dzięki IE10, Microsoft będzie w stanie podjąć walkę z Chrome i Firefoxem.</li>
<li><strong>Google</strong> – w dalszym ciągu będzie integrował swoje usługi, stawiając Google+ w ich centrum.</li>
<li><strong>Apple</strong> – era Apple skończyła się wraz ze śmiercią Jobsa. Apple przestanie być firmą wyznaczającą trendy w konsumenckim IT i zamieni się w drugi Microsoft, dostarczając alternatywne rozwiązania wobec swojego okienkowego konkurenta.</li>
</ol>
<p>Ciekawe ile z powyższych oczekiwań się sprawdzi?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/01/moje-oczekiwania-wobec-roku-2012.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Od zera do blogera</title>
		<link>http://blog.wilgucki.pl/2011/12/od-zera-do-blogera.html</link>
		<comments>http://blog.wilgucki.pl/2011/12/od-zera-do-blogera.html#comments</comments>
		<pubDate>Sat, 31 Dec 2011 22:59:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Ogólne]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2064</guid>
		<description><![CDATA[Ostatnie dni grudnia są dobrą okazją do podsumowania mijającego roku. W tych dniach powstaje najwięcej zestawień, the best of, przewidywań i postanowień noworocznych. Ponieważ ze swoich grzechów spowiadam się przy okazji urodzin Hello World! (mniej więcej połowa września), ostatni wpis &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2011/12/od-zera-do-blogera.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Ostatnie dni grudnia są dobrą okazją do podsumowania mijającego roku. W tych dniach powstaje najwięcej zestawień, the best of, przewidywań i postanowień noworocznych. Ponieważ ze swoich grzechów spowiadam się przy okazji urodzin Hello World! (mniej więcej połowa września), ostatni wpis w tym roku postanowiłem przeznaczyć na krótkie podsumowanie mojej drogi od zera do blogera.</p>
<p>Zaczynałem jak większość blogerów stricte technicznych, od pisania na tematy mocno ukierunkowane na dany problem, głównie z dziedziny PHP. Dosyć szybko doszły do tego informacje o nowościach z interesujących mnie tematów oraz różnej maści eksperymenty, które wcześniej, czy później kończyły swój żywot. Od czasu do czasu napisałem o czymś nie do końca związanym z branżą lub popełniłem jakiegoś grafomańskiego bohomaza. Blog powoli nabierał rozpędu, a ja cieszyłem się jak <strike>dziecko</strike> każdy początkujący bloger z powoli rosnących statystyk.</p>
<p>Z czasem zrozumiałem (w sumie wiedziałem o tym od dawna, ale nie dopuszczałem do siebie tej myśli), że pisanie bloga nie musi oznaczać pisania dla samego pisania, a bloger nie jest idealistą walczącym z kapitalistycznymi serwisami chcącymi wyciągnąć ostatnią złotówkę od swoich czytelników zasypując ich reklamami. Wprawdzie daleko mi do zarabiania na blogu (reklamy ledwie pokrywają koszt domeny i hostingu), ale sam fakt, iż ludzie chcą czytać moje teksty powoduje, że chce się pisać. Jeszcze bardziej cieszy, gdy teksty publikowane są “u tych dużych”. W moim przypadku są to Antyweb, MSDN oraz Webhosting. Poza “dużymi” pisałem (i nadal to robię) dla mniejszych – wp-games.pl, PHP Magazyn oraz kilku innych. W dwa lata i kilka miesięcy udało mi się zaistnieć w szerszej świadomości lokalnego światka IT, poznać wielu wspaniałych ludzi oraz nauczyć się wielu nowych rzeczy, o których bym się nie dowiedział, gdyby nie blog.</p>
<p>Zapytany o sposób w jaki udało mi się od anonimowego pehapowca dotrzeć do szerszej publiki, odpowiem tak samo jak wszyscy inni – ciężka praca i konsekwencja w działaniu. Nie, nie wstąpiłem do żadnego klubu, gdzie zakazali mi mówić/pisać na ten temat. Prawda nie jest taka kolorowa jak w filmach z happy endem, a na sukces trzeba długo pracować. Jeśli miałbym komuś poradzić jak pisać bloga by przyciągał on czytelników, byłyby to następujące kroki (kolejność dowolna).</p>
<ol>
<li>Konsekwencja – jeśli chcesz tworzyć bloga, musisz pisać regularnie na z góry założone tematy. Skakanie po tematach oraz długie przerwy w pisaniu szybko zniechęcą stałych czytelników i zostanie jedynie garstka najwierniejszych (rodzina i przyjaciele wchodzący z litości).</li>
<li>Wolny czas – samo pisanie na blogu zajmuje minimum kilka godzin tygodniowo. Do tego dochodzi zbadanie opisywanego tematu, zarządzanie blogiem, odpowiadanie na komentarze. Jeśli nie wygospodaruje się odpowiednio dużo czasu na pisanie, będą powstawały potworki, których nikt nie będzie chciał czytać.</li>
<li>Trzymanie ręki na pulsie – każdy techniczny blog publikuje informacje o nowościach. Aby nie być wtórnym, powinniśmy śledzić wiele źródeł informacji – kanały RSS, Twitter, Facebook/Google+, newslettery, itp. Oczywiście to również wymaga czasu, nawet więcej niż samo pisanie.</li>
</ol>
<p>Powyższe kroki pozwoliły mi w dwa lata i trochę odnieść sukces jako bloger – być rozpoznawalną osobą, którą ludzie czytają. Pozostaje jedynie mieć nadzieję, iż czytanie daje Wam tyle samo satysfakcji, ile mi daje pisanie.</p>
<p>Korzystając z okazji życzę Wam w aby właśnie rozpoczęty rok był lepszy od poprzedniego pod każdym możliwym względem.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2011/12/od-zera-do-blogera.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Holodeck jest bliżej niż nam się wydaje</title>
		<link>http://blog.wilgucki.pl/2011/12/holodeck-jest-blizej-niz-nam-sie-wydaje.html</link>
		<comments>http://blog.wilgucki.pl/2011/12/holodeck-jest-blizej-niz-nam-sie-wydaje.html#comments</comments>
		<pubDate>Wed, 28 Dec 2011 20:03:59 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2066</guid>
		<description><![CDATA[Jako dziecko zachwycałem się holodeckiem pokazywanym w Star Treku i zastanawiałem się czy moje pra pra pra wnuki dożyją czasów, w których technologia ta stanie się rzeczywistością. Od tamtego czasu pojawiło się wiele wizji i prototypów wirtualnej rzeczywistości, jednak żaden &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2011/12/holodeck-jest-blizej-niz-nam-sie-wydaje.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Jako dziecko zachwycałem się holodeckiem pokazywanym w Star Treku i zastanawiałem się czy moje pra pra pra wnuki dożyją czasów, w których technologia ta stanie się rzeczywistością. Od tamtego czasu pojawiło się wiele wizji i prototypów wirtualnej rzeczywistości, jednak żaden z prezentowanych produktów do pięt nie dorastał staremu dobremu holodeckowi.</p>
<p>Kilka lat temu Microsoft przedstawił swoją wizję przyszłości, w której mogliśmy zobaczyć między innymi dwójkę dzieciaków rozmawiających przez “szybę” będącą jednocześnie ogromnym wyświetlaczem, na żywo tłumaczącym toczącą się właśnie rozmowę.</p>
<p align="center"><iframe height="315" src="http://www.youtube.com/embed/t5X2PxtvMsU" frameborder="0" width="560" allowfullscreen="allowfullscreen"></iframe></p>
<p>Wiele osób, między innymi ja, zachwycało się przedstawioną wizją i zastanawiało się jak wiele lat musi jeszcze upłynąć, aby technologia ta trafiła pod strzechy. Okazuje się, iż wcale nie jest to odległa przyszłość, a postęp dzieje się na naszych oczach. W tajnych laboratoriach Microsoftu powstaje właśnie holodeck, który wprawdzie jeszcze znajduje się w bardzo wczesnej fazie, ale już teraz zapiera dech w piersiach.</p>
<p align="center"><iframe height="315" src="http://www.youtube.com/embed/rJ1p5SD3sOM" frameborder="0" width="560" allowfullscreen="allowfullscreen"></iframe></p>
<p>Ciekawe czy termin “za rok” jest realny?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2011/12/holodeck-jest-blizej-niz-nam-sie-wydaje.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

