<?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, 21 May 2012 06:00:00 +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>Dallas &#8216;63</title>
		<link>http://blog.wilgucki.pl/2012/05/dallas-63.html</link>
		<comments>http://blog.wilgucki.pl/2012/05/dallas-63.html#comments</comments>
		<pubDate>Mon, 21 May 2012 06:00:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Książki]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2142</guid>
		<description><![CDATA[Jednym z moich ulubionych pisarzy jest Stephen King. Kilkanaście lat temu pochłaniałem jego książki jak osoba o zdrowej wadze pączki i mimo iż nie udało mi się przebrnąć przez Lśnienie (podobno powstaje druga część), a do To podchodziłem dwa razy, &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/05/dallas-63.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Jednym z moich ulubionych pisarzy jest Stephen King. Kilkanaście lat temu pochłaniałem jego książki jak osoba o zdrowej wadze pączki i mimo iż nie udało mi się przebrnąć przez <em>Lśnienie</em> (podobno powstaje druga część), a do <em>To</em> podchodziłem dwa razy, uważam Kinga za jednego z lepszych autorów “grozy”. Dlaczego cudzysłów? Ponieważ ostatnie książki jakie wyszły spod jego pióra, mimo iż niepokojące, mocno odstają od tych, które czytałem jako nastolatek (albo tak się zestarzałem, że to co kiedyś wydawało się straszne, dzisiaj po prostu jest nieco mocniejszą rozrywką). Poprzednia cegła (inaczej nie da się tego nazwać) jego autorstwa – <em>Pod kopułą</em>, mimo ciekawego pomysłu, nie przypadła mi do gustu, a ostatnie sto stron okazało się być bardziej niż kiepskie. Z tego właśnie powodu wahałem się przed zakupem najnowszej cegły – <em>Dallas ‘63</em>.</p>
<p>Książka jest ogromna – prawie 900 stron (<em>Pod kopułą</em> była nieco grubsza) i z pewnością dałoby się nią spacyfikować kota lub małego psa. Niemniej zabrałem się za lekturę i już od pierwszych stron wiedziałem, że jest to pozycja warta uwagi. Pomijając “magiczne schody do podróży w czasie” (nie martwcie się, pojawiają się na samym początku, więc nie zepsułem wam fabuły), książka jest, co tu dużo mówić, rewelacyjna. Nie zagłębiając się w szczegóły, główny bohater, nauczyciel angielskiego, cofa się w czasie do końca lat pięćdziesiątych dwudziestego wieku i opowiada o świecie jaki dawno przeminął. Oczami bohatera widzimy świat, w którym segregacja rasowa to coś więcej niż niewybredne żarty, świat, w którym ludzie znają swoich sąsiadów i nie zamykają drzwi na noc, świat, w którym znalezienie interesującej nas informacji to coś więcej niż uruchomienie przeglądarki internetowej i wpisanie w Google (które pojawia się jako Wielki Brat dwudziestego pierwszego wieku) szukanej frazy. Pojawia się również odwołanie do wspomnianej książki <em>To</em>. Główny bohater spotyka parę nastolatków, które dzielnie walczyły z Pennywise oraz dowiaduje się, że kilka lat wcześniej w mieście, które właśnie odwiedza, grasował klown atakujący dzieci.</p>
<p>A skąd ten tytuł? Osoby znające, nawet pobieżnie, historię Stanów Zjednoczonych, skojarzą datę oraz miejsce z jednym z najważniejszych w historii świata wydarzeń – zabójstwem JFK. Nie chcę wam psuć zabawy, więc nie będę opisywał jak się mają losy głównego bohatera do tego zamachu. Sami będzie musieli się o tym przekonać.</p>
<p>Czy warto przeczytać <em>Dallas ‘63</em>? To zależy. Jeśli <em>Ręka mistrza</em>, w której opis przygotowywania kolacji przez bohatera zajmował kilka stron, nie była wam straszna, a Ameryka końca lat pięćdziesiątych ubiegłego wieku wam się podoba, to książka jest warta uwagi. Od razu uprzedzę, że nie jest to kolejna teoria spiskowa, ani wartki kryminał. Momentami jest to ckliwy dramat, dramat człowieka, który musi wybrać między swoim szczęściem, a dobrem ogółu. Jednak mimo wszystko, książka bardzo mi się podobała i czas poświęcony na jej przeczytanie nie był czasem straconym.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/05/dallas-63.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Przygoda, przygoda, każdej chwili szkoda</title>
		<link>http://blog.wilgucki.pl/2012/05/przygoda-przygoda-kazdej-chwili-szkoda.html</link>
		<comments>http://blog.wilgucki.pl/2012/05/przygoda-przygoda-kazdej-chwili-szkoda.html#comments</comments>
		<pubDate>Mon, 07 May 2012 16:00:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Organizacyjne]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2139</guid>
		<description><![CDATA[Jak zapewne zauważyliście, moja aktywność na blogu w ostatnich miesiącach mocno zmalała, a pojawiające się wpisy publikowane były bardzo nieregularnie. Wynikało to z kilku, jak się z czasem okazało mało istotnych spraw, które musiałem rozwiązać. Ponieważ niektóre z nich będę &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/05/przygoda-przygoda-kazdej-chwili-szkoda.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Jak zapewne zauważyliście, moja aktywność na blogu w ostatnich miesiącach mocno zmalała, a pojawiające się wpisy publikowane były bardzo nieregularnie. Wynikało to z kilku, jak się z czasem okazało mało istotnych spraw, które musiałem rozwiązać. Ponieważ niektóre z nich będę kończył jeszcze w maju, do aktywniejszego blogowania powrócę z początkiem czerwca, który zapowiada się co najmniej interesująco.</p>
<p>W oczekiwaniu na czerwiec, blog przejdzie małą metamorfozę. Zacznie się od zmiany wyglądu (nowy szablon już się szuka) i całkiem możliwe, iż pojawi się kilka dodatkowych elementów. Na razie nie będę o tym pisał, ponieważ plany dopiero się krystalizują i nie chciałbym za wcześnie napisać o czymś, co się mogłoby nie pojawić. Odnośnie samych wpisów, to częstotliwość ich pojawiania się mocno się nie zwiększy, ale będą za to pojawiać się w regularnych odstępach. Tematyka publikowanych treści się nie zmieni. Co więcej, dojdzie kilka nietechnicznych tematów, które będą przeplatać się z właściwą tematyką bloga. Co to będą za tematy, zobaczycie wkrótce.</p>
<p>W oczekiwaniu na reaktywację bloga polecam kultową piosenkę, znaną z reklamy pewnego napoju.</p>
<p align="center"><iframe height="360" src="http://www.youtube.com/embed/0teIPHzlRpA?rel=0" frameborder="0" width="480" allowfullscreen="allowfullscreen"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/05/przygoda-przygoda-kazdej-chwili-szkoda.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rzut oka na Knockout.js</title>
		<link>http://blog.wilgucki.pl/2012/04/rzut-oka-na-knockout-js.html</link>
		<comments>http://blog.wilgucki.pl/2012/04/rzut-oka-na-knockout-js.html#comments</comments>
		<pubDate>Thu, 26 Apr 2012 06:00:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2128</guid>
		<description><![CDATA[Knockout.js jest biblioteką JavaScript z powodzeniem implementującą wzorzec MVVM (Model – View – View Model), znany chociażby z Silverlighta. Wykorzystanie tego wzorca w przypadku standardowego tandemu HTML + JavaScript daje ogromne możliwości w postaci automatycznie aktualizującego się widoku, bez konieczności &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/04/rzut-oka-na-knockout-js.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Knockout.js jest biblioteką JavaScript z powodzeniem implementującą wzorzec MVVM (Model – View – View Model), znany chociażby z Silverlighta. Wykorzystanie tego wzorca w przypadku standardowego tandemu HTML + JavaScript daje ogromne możliwości w postaci automatycznie aktualizującego się widoku, bez konieczności ręcznego wprowadzania zmian do kodu HTML. Nas jako programistów interesuje tylko jedno – view model, czyli obiektowa reprezentacja danych, która znajduje odzwierciedlenie w warstwie prezentacji. W skrócie, wystarczy zaktualizować obiekt JavaScript, a zmiany zostaną wprowadzone bez naszej ingerencji w widok.</p>
<p>Zacznijmy od prostego przykładu.</p>
<pre class="brush: html">&lt;p&gt;jakasZmienna: &lt;span data-bind="text: jakasZmienna"&gt;&lt;/span&gt;&lt;/p&gt;</pre>
<pre class="brush: js">function ViewModel() {
    this.jakasZmienna = "warosc zmiennej";
}

ko.applyBindings(new ViewModel());</pre>
<p>Powyższy kod, mimo iż niezbyt skomplikowany, pokazuje siłę Knockout.js. Nasz view model definiuje zmienną o nazwie <em>jakasZmienna</em>. Jak się łatwo domyślić wartość tej zmiennej zostanie wyświetlona wewnątrz znacznika <em>span</em>. Co jednak chcielibyśmy zmodyfikować zawartość tej zmiennej? Sprawdźmy.</p>
<p>Dodajmy do kodu HTML pole tekstowe.</p>
<pre class="brush: html">&lt;input type="text" data-bind="value: jakasZmienna" /&gt;</pre>
<p>I zmodyfikujmy nieco view model.</p>
<pre class="brush: js">function ViewModel() {
    this.jakasZmienna = ko.observable("warosc zmiennej");
}</pre>
<p>Teraz zmieniając zawartość pola tekstowego, zaobserwujemy, że wprowadzony tekst pojawia się w akapicie (nie zapomnijcie, że zdarzenie zostanie wywołane w momencie, gdy pole tekstowe przestanie być aktywne).</p>
<p>Oczywiście poza pojedynczymi wartościami, możemy przekazywać całe tablice, dzięki czemu dane przesłane z serwera możemy prezentować w postaci tabel i/lub list. Oto prosty przykład.</p>
<p>Zacznijmy od kodu HTML.</p>
<pre class="brush: html">    &lt;ul data-bind="foreach: items"&gt;
        &lt;li data-bind="text: name"&gt;&lt;/li&gt;
    &lt;/ul&gt;</pre>
<p>Jak się zapewne domyślacie, lista zostanie wypełniona danymi z view model.</p>
<pre class="brush: js">function ViewModel()
{
    this.items = ko.observableArray(
        [
            { name: "Jan Kowalski" },
            { name: "Ewa Wisniewska" },
            { name: "Piotr Nowak" }
        ]
    );
}

ko.applyBindings(new ViewModel());</pre>
<p>A co jeśli chcielibyśmy ograniczyć listę elementów i zastosować filtrowanie wyników? Nic prostszego. Wystarczy zastosować instrukcję warunkową <em>if</em>. Możemy użyć jej tak samo jak w przypadku <em>foreach</em> lub zastosować specjalny komentarz.</p>
<pre class="brush: html">&lt;ul data-bind="foreach: items"&gt;
    &lt;!-- ko if: age &lt; 30 --&gt;
    &lt;li data-bind="text: name"&gt;
    &lt;!-- /ko --&gt;
&lt;/ul&gt;</pre>
<pre class="brush: js">function ViewModel()
{
    this.items = ko.observableArray(
        [
            { name: "Jan Kowalski", age: 23 },
            { name: "Ewa Wisniewska", age: 21 },
            { name: "Piotr Nowak", age: 30 }
        ]
    );
}</pre>
<p>Przedstawione powyżej przykłady to tylko wierzchołek góry lodowej. Knockout.js oferuje o wiele większe możliwości, np bindowanie zdarzeń, szablony, bindowanie kodu HTML (nie tylko tekstu), kodu JavaScript, CSS i wiele innych. Ponieważ wpis zatytułowany jest “rzut oka”, opiszę je później. Tym czasem zachęcam do zapoznania się z tą biblioteką. Dokładną dokumentację, tutoriale oraz przykłady znajdziecie na oficjalnej stronie projektu &#8211; <a title="http://knockoutjs.com/" href="http://knockoutjs.com" target="_blank"><strong>knockoutjs.com</strong></a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/04/rzut-oka-na-knockout-js.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jak dobrze znasz SQL?</title>
		<link>http://blog.wilgucki.pl/2012/04/jak-dobrze-znasz-sql.html</link>
		<comments>http://blog.wilgucki.pl/2012/04/jak-dobrze-znasz-sql.html#comments</comments>
		<pubDate>Mon, 02 Apr 2012 06:00:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2125</guid>
		<description><![CDATA[Poprzedni quiz przygotowany przez Nettuts+ nie wyszedł mi zbyt dobrze. Na szczęście zrehabilitowałem się w quizie o SQL, zdobywając 100%. Napiszcie w komentarzu jak Wam poszło.]]></description>
			<content:encoded><![CDATA[<p>Poprzedni quiz przygotowany przez Nettuts+ nie wyszedł mi zbyt dobrze. Na szczęście zrehabilitowałem się w quizie o SQL, zdobywając 100%. Napiszcie w komentarzu jak Wam poszło.</p>
<p><a href="http://net.tutsplus.com/articles/nettuts-quiz-11-do-you-know-sql/" 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="quiz_sql" border="0" alt="quiz_sql" src="http://blog.wilgucki.pl/wp-content/uploads/2012/03/quiz_sql.png" width="420" height="341" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/04/jak-dobrze-znasz-sql.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Zend Framework 2 &#8211; co nas czeka</title>
		<link>http://blog.wilgucki.pl/2012/03/zend-framework-2-co-nas-czeka.html</link>
		<comments>http://blog.wilgucki.pl/2012/03/zend-framework-2-co-nas-czeka.html#comments</comments>
		<pubDate>Wed, 28 Mar 2012 07:00:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2122</guid>
		<description><![CDATA[Zend Framework to jeden z najpopularniejszych frameworków PHP, który poznawałem jako jeden z pierwszych. Z wersji na wersję przybywało w nim funkcjonalności, zamieniając go ze zbioru luźno związanych komponentów w pełnoprawny framework MVC (z małym przymrużeniem oka). Od ponad roku &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/03/zend-framework-2-co-nas-czeka.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Zend Framework to jeden z najpopularniejszych frameworków PHP, który poznawałem jako jeden z pierwszych. Z wersji na wersję przybywało w nim funkcjonalności, zamieniając go ze zbioru luźno związanych komponentów w pełnoprawny framework MVC (z małym przymrużeniem oka). Od ponad roku programiści z niego korzystający czekają na wersję oznaczoną numerem 2, która ma przywrócić blask nieco zaśniedziałej chwały. Czy to się uda? Ciężko stwierdzić. Obecnie mamy możliwość sprawdzenia jak sobie radzi trzecia beta Zend Frameworka 2. Niestety dokumentacja jest tak samo kiepska jak w przypadku ZF 1 i większość informacji musimy wyszukiwać w sieci lub kodzie.</p>
<p>Co się zmieniło? Wszystko. Jeśli znacie aktualna wersję Zend Frameworka, to i tak będzie musieli uczyć się go na nowo, a aplikacje napisane w oparciu o pierwszą wersję, nie będą działać z wersją drugą. Jest tak dlatego, ponieważ ZF 2 został podzielony na moduły, które w pierwszej wersji były traktowane po macoszemu. Od drugiej wersji każdy moduł, to niezależny byt, który można bez żadnego problemu wyjąć z jednej aplikacji i wstawić do innej. Co więcej, moduły można pakować do archiwum phar, przez co ich utrzymanie i użycie będzie jeszcze prostsze.   <br />Moduły stały się pojemnikami na wszystko co chcemy zamknąć w obrębie jednej przestrzeni nazw. I tak, moduł może zawierać specyficzne biblioteki, zasoby (css, javascript, pliki graficzne), całą aplikację MVC, konfigurację – wszystko jest niezależne od innych modułów. Pozwoli to na budowanie klocków, z których będzie można tworzyć modułowe aplikacje.</p>
<p>Spore zmiany zaszły również w obsłudze requestu od momentu jego przesłania do aplikacji, do wygenerowania odpowiedzi. Pamiętacie jak to wyglądało w ZF 1? Pluginy, action helpery, metody w kontrolerze, boostrap i cała magia z tym związania. W ZF 2 już tego nie ma. Teraz mamy eventy, przy pomocy których możemy podpiąć się pod większość etapów obsługi żądania. Od strony programisty za wiele się nie zmieni. I tak trzeba napisać kod, który robi coś w określonym momencie, ale od strony “bebechów”, twórcy ZF 2 odwalili kawał dobrej roboty.</p>
<p>Podobnie wygląda sprawa wstrzykiwania zależności. Z wierzchu nie widać za bardzo co się zmieniło, ponieważ nadal musimy bawić się wielowymiarowymi, zagnieżdżonymi tablicami przekazywanymi do jakiegoś obiektu. Jednak jeśli zajrzymy pod maskę, znajdziemy coraz popularniejsze w PHP DI (dependency Injection). Podobnie jak w przypadku eventów, DI również zostało dobrze przemyślane.</p>
<p>Kolejną sporą zmianę zauważymy w widoku. Teraz akcja kontrolera zwraca obiekt typu ViewModel, który odpowiedzialny jest za ustawienie szablonu, pliku widoku i przekazanie zmiennych. Ciekawie wygląda opcja zagnieżdżania, pozwalająca osadzić jeden ViewModel wewnątrz innego, co w rezultacie pozwoli na wpływanie na zawartość dowolnego elementu szablonu.</p>
<p>Przejrzałem Zend Frameworka 2 dosyć pobieżnie, przebrnąłem przez Quick Start i stworzyłem kilka modułów w ramach treningu, jednak już teraz mogę powiedzieć, że szykuje się nam porządnie wykonany framework. Nie przeprowadzałem żadnych testów wydajnościowych, w końcu cały czas mamy do czynienia z betą, obawiam się jednak, że ZF 2 może być wolniejszy od swojego poprzednika. Jest to mocno subiektywne odczucie i nie powinniście się nim sugerować podczas wybierania frameworka. Ogromnym plusem ZF 2 jest podzielenie wszystkiego na niezależne moduły, co na pewno przyczyni się do powstania ogromnej bazy paczek podobnych do gem-ów powszechnie wykorzystywanych w Railsach. Przynajmniej taką mam nadzieję. Ile poczekamy na stabilną wersję ZF 2? Nie wiem. Zgaduję, że chłopaki czekali na PHP 5.4 i w jednej z kolejnych wersji beta zobaczymy rozbudowany komponent Zend_Tool, pozwalający na uruchomienie aplikacji opartej na ZF 2 bez konieczności posiadania jakiegokolwiek serwera. Nieważne jaka by nie była przyczyna opóźnień, czekam na finalną wersję z niecierpliwością.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/03/zend-framework-2-co-nas-czeka.html/feed</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>4Developers 2012 przed nami &#8211; mam dla Was jedną wejści&#243;wkę</title>
		<link>http://blog.wilgucki.pl/2012/03/4developers-2012-przed-nami-mam-dla-was-jedna-wejsciwke.html</link>
		<comments>http://blog.wilgucki.pl/2012/03/4developers-2012-przed-nami-mam-dla-was-jedna-wejsciwke.html#comments</comments>
		<pubDate>Thu, 22 Mar 2012 17:35:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Konferencje]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2115</guid>
		<description><![CDATA[Już niedługo, bo za niecały miesiąc, odbędzie się czwarta edycja konferencji 4Developers. Miałem okazję uczestniczyć w dwóch poprzednich edycjach i bardzo chciałbym wziąć udział w tym roku, niestety z powodu kilku drobnych zawirowań, muszę tym razem odpuścić sobie tę przyjemność. &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/03/4developers-2012-przed-nami-mam-dla-was-jedna-wejsciwke.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p><img style="background-image: none; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;" title="logo_kolorowe_nova_versja_poziomo" src="http://blog.wilgucki.pl/wp-content/uploads/2012/03/logo_kolorowe_nova_versja_poziomo.jpg" alt="logo_kolorowe_nova_versja_poziomo" width="640" height="149" border="0" /></p>
<p>Już niedługo, bo za niecały miesiąc, odbędzie się czwarta edycja konferencji 4Developers. Miałem okazję uczestniczyć w dwóch poprzednich edycjach i bardzo chciałbym wziąć udział w tym roku, niestety z powodu kilku drobnych zawirowań, muszę tym razem odpuścić sobie tę przyjemność. Bardzo tego żałuję, ponieważ w tym roku interesujących tematów na pewno nie zabraknie. Do najciekawszych moim zdaniem można zaliczyć między innymi Tworzenie i wdrażanie z użyciem strategii chmur hybrydowych, Jak wybrać odpowiednią bazę NoSQL, REST i ograniczenia hypermediów, czy Hadoop w Hurtowni Danych nk.pl. Oczywiście nie są jedyne interesujące sesje, których pełną listę znajdziecie na <a href="http://4developers.org.pl/" target="_blank">stronie poświęconej konferencji</a>. Podobnie jak w zeszłych latach i tym razem do wyboru są 4 ścieżki. Są to <a href="http://4developers.org.pl/java-2/" target="_blank">Java</a>, <a href="http://4developers.org.pl/zarzadzanie-projektami/" target="_blank">Zarządzanie projektami IT</a>, <a href="http://4developers.org.pl/wydajnosc-pl/" target="_blank">Wydajność i skalowalność</a> oraz <a href="http://4developers.org.pl/php/" target="_blank">PHP</a>. Oprócz samych sesji wykładowych na uczestników czekają warsztaty oraz konkursy z nagrodami.</p>
<p>Ale do rzeczy. Mam dla Was wejściówkę dla jednej osoby. Co trzeba zrobić, aby ją wygrać? Napiszcie w komentarzu na jaką sesję chcielibyście najbardziej pójść i dlaczego? Komisja egzaminacyjna w tajnym składzie zadecyduje o zwycięzcy. Na odpowiedzi macie czas do końca weekendu (wiem, wiem – ładna pogoda, a ja wymyślam jakieś zadanie na weekend), czyli do północy 25 marca. I nie zapomnijcie, że w ten weekend przestawiamy zegarki o godzinę do przodu.</p>
<p>Strona konferencji – <a title="http://4developers.org.pl/" href="http://4developers.org.pl/">4developers.org.pl</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/03/4developers-2012-przed-nami-mam-dla-was-jedna-wejsciwke.html/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Zend_Form + Bootstrap from Twitter</title>
		<link>http://blog.wilgucki.pl/2012/03/zend_form-bootstrap-from-twitter.html</link>
		<comments>http://blog.wilgucki.pl/2012/03/zend_form-bootstrap-from-twitter.html#comments</comments>
		<pubDate>Fri, 02 Mar 2012 10:40:00 +0000</pubDate>
		<dc:creator>batman</dc:creator>
				<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[Zend_Form]]></category>

		<guid isPermaLink="false">http://blog.wilgucki.pl/?p=2108</guid>
		<description><![CDATA[Ludzie z Twittera odwalili kawał dobrej roboty dostarczając Bootstrap, bibliotekę pozwalającą niewielkim nakładem pracy przygotować dobrze wyglądającą stronę. Wystarczy odpowiednio przygotować kod HTML, aby gotowe reguły CSS ozdobiły stronę i sprawiły, że przestanie wyglądać siermiężnie. Do tego dochodzi bogaty zbiór &#8230;<p class="read-more"><a href="http://blog.wilgucki.pl/2012/03/zend_form-bootstrap-from-twitter.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Ludzie z Twittera odwalili kawał dobrej roboty dostarczając Bootstrap, bibliotekę pozwalającą niewielkim nakładem pracy przygotować dobrze wyglądającą stronę. Wystarczy odpowiednio przygotować kod HTML, aby gotowe reguły CSS ozdobiły stronę i sprawiły, że przestanie wyglądać siermiężnie. Do tego dochodzi bogaty zbiór pluginów JavaScript z powodzeniem uzupełniający niezastąpione jQuery UI.</p>
<p>Jakiś czas temu zabrałem się za tworzenie <a href="http://blog.wilgucki.pl/2011/11/uniwersalna-aplikacja-oparta-o-zend-framework.html" target="_blank">uniwersalnej aplikacji opartej o Zend Framework</a>, mającej na celu ułatwienie tworzenie prostych szablonowych stron. Pierwszym usprawnieniem jakie do tej aplikacji dodałem, są formularze ostylowane przy pomocy wspomnianego Bootstrapa. Jedyne co należy zrobić, to dołączyć do projektu odpowiednie pliki CSS i JavaScript oraz dziedziczyć w klasie formularza po klasie <em><a href="https://github.com/wilgucki/UniversalZF/blob/master/library/Batman/Form/Horizontal.php" rel="nofollow" target="_blank">Batman_Form_Horizontal</a></em> lub <em><a href="https://github.com/wilgucki/UniversalZF/blob/master/library/Batman/Form/Inline.php" rel="nofollow" target="_blank">Batman_Form_Inline</a></em>. Pierwsza z nich odpowiada za standardowy formularz, druga za typowy formularz logowania. W tworzonej klasie formularza nie można zapomnieć o wywołaniu z klasy rodzica metody <em>init</em>.</p>
<pre class="brush: php">class Application_Form_Book extends Batman_Form_Horizontal
{
    public function init()
    {
        $title = new Zend_Form_Element_Text('title');
        $title-&gt;setLabel('Tytuł')
              -&gt;setRequired(true)
              -&gt;addValidator(new Zend_Validate_NotEmpty());

        $submit = new Zend_Form_Element_Submit('btn_save');
        $submit-&gt;setLabel('Zapisz')
               -&gt;setIgnore(true);

        $this-&gt;addElement($title);
        $this-&gt;addElement($submit);

        parent::init();
    }
}</pre>
<p>Kod przykładowej aplikacji znajdziecie na <strong><a href="https://github.com/wilgucki/UniversalZF" rel="nofollow" target="_blank">GitHubie</a></strong>, a samą aplikację możecie zobaczyć pod adresem <a title="http://batman.my.phpcloud.com/universalzf/user/add" href="http://batman.my.phpcloud.com/universalzf/user/add">http://batman.my.phpcloud.com/universalzf/user/add</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.wilgucki.pl/2012/03/zend_form-bootstrap-from-twitter.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<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>4</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>
	</channel>
</rss>

