<?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>Gabriel Habryn</title>
	<atom:link href="http://blog.widmogrod.info/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.widmogrod.info</link>
	<description>W wolnych chwilach.</description>
	<lastBuildDate>Sun, 29 Jan 2012 22:45:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Bohater drugiego planu</title>
		<link>http://blog.widmogrod.info/2012/01/bohater-drugiego-planu/</link>
		<comments>http://blog.widmogrod.info/2012/01/bohater-drugiego-planu/#comments</comments>
		<pubDate>Sun, 29 Jan 2012 22:45:55 +0000</pubDate>
		<dc:creator>Gabriel Habryn</dc:creator>
				<category><![CDATA[Bez kategorii]]></category>
		<category><![CDATA[Startup Weekend Krakow]]></category>

		<guid isPermaLink="false">http://blog.widmogrod.info/?p=450</guid>
		<description><![CDATA[Bohater drugiego planu podczas Startup Weekend Krakow. Bardzo miło jest sobie przypomnieć panującą atmosferę.]]></description>
			<content:encoded><![CDATA[<p>Bohater drugiego planu podczas Startup Weekend Krakow. Bardzo miło jest sobie przypomnieć panującą atmosferę.</p>
<p><iframe width="584" height="329" src="http://www.youtube.com/embed/HAI5oanGcPQ?fs=1&#038;feature=oembed" frameborder="0" allowfullscreen></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widmogrod.info/2012/01/bohater-drugiego-planu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SaturnAnalytic.com &#8211; projekt na Startup Weekend Krakow</title>
		<link>http://blog.widmogrod.info/2012/01/saturnanalytic-com-projekt-na-startup-weekend-krakow/</link>
		<comments>http://blog.widmogrod.info/2012/01/saturnanalytic-com-projekt-na-startup-weekend-krakow/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 23:46:48 +0000</pubDate>
		<dc:creator>Gabriel Habryn</dc:creator>
				<category><![CDATA[Projekty]]></category>
		<category><![CDATA[Startup Weekend Krakow]]></category>

		<guid isPermaLink="false">http://blog.widmogrod.info/?p=446</guid>
		<description><![CDATA[Mój pierwszy Startup Weekend, który odbył się w Krakowie oceniam za bardzo udany. Niesamowita ilość pozytywnych emocji, zwariowanych pomysłow i jeszcze bardziej szalonych ludzi wkoło, jest czymś co nie da się opisac! Polecam wszystkim! Szybko podsumowując, wystartowałem z pomysłem, który w &#8230; <a href="http://blog.widmogrod.info/2012/01/saturnanalytic-com-projekt-na-startup-weekend-krakow/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Mój pierwszy Startup Weekend, który odbył się w Krakowie oceniam za bardzo udany. Niesamowita ilość pozytywnych emocji, zwariowanych pomysłow i jeszcze bardziej szalonych ludzi wkoło, jest czymś co nie da się opisac!</p>
<p>Polecam wszystkim! <img src='http://blog.widmogrod.info/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Szybko podsumowując, wystartowałem z pomysłem, który w założeniach miał być nową generacją narzędzi analitycznych. Stworzyliśmy świetny zespół z Grzegorzem i Tim&#8217;em. Dosłownie po kilku godzinach wytężonej pracy, kombinacji i sugestii mentorów stworzyliśmy projekt który o chrzciliśmy <a href="http://saturnanalytic.com/">SaturnAnalytic.com</a>.</p>
<p>W skrócie jest to narzędzie przeznaczone dla małych i średnich przedsiębiorstw, które wykorzystują internet i media społecznościowe jako główny nośnik reklamy i chcą konkurować na rynku globalnym.  Głównym zadaniem naszego produktu jest porównywanie Twojej strony internetowej do stron konkurencji.</p>
<p>Poniżej prezentacja, która zawiera troszeczkę więcej szczegółów.<br />
Zapraszam do obserwowania naszego konta na Twitterze <a href="http://twitter.com/#!/SaturnAnalytic">@SaturnAnalytic</a></p>
<p>&nbsp;</p>
<div style="width:425px" id="__ss_11212591"> <strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/widmogrod/saturnanalytic" title="SaturnAnalytic" target="_blank">SaturnAnalytic</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/11212591" width="425" height="355" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
<div style="padding:5px 0 12px"> View more <a href="http://www.slideshare.net/" target="_blank">presentations</a> from <a href="http://www.slideshare.net/widmogrod" target="_blank">widmogrod</a> </div>
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.widmogrod.info/2012/01/saturnanalytic-com-projekt-na-startup-weekend-krakow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interfejs konwersacyjny &#8211; TechCamp #2</title>
		<link>http://blog.widmogrod.info/2012/01/interfejs-konwersacyjny-techcamp-2/</link>
		<comments>http://blog.widmogrod.info/2012/01/interfejs-konwersacyjny-techcamp-2/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 23:28:59 +0000</pubDate>
		<dc:creator>Gabriel Habryn</dc:creator>
				<category><![CDATA[Prezentacje]]></category>
		<category><![CDATA[CUI]]></category>
		<category><![CDATA[Interfejs konwersacyjny]]></category>
		<category><![CDATA[NUI]]></category>

		<guid isPermaLink="false">http://blog.widmogrod.info/?p=441</guid>
		<description><![CDATA[Podczas TechCamp #2, który odbył się kilka dni temu miałem okazję przedstawić pewną wizję związaną z sposobem komunikacji człowieka z technologią. Przybliżyłem pojęcie interfejsu konwersacyjnego oraz przedstawiłem klika ciekawych projektów, które zmieniają sposób wymiany informacji z cyfrową rzeczywistością. Już niedługo &#8230; <a href="http://blog.widmogrod.info/2012/01/interfejs-konwersacyjny-techcamp-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Podczas TechCamp #2, który odbył się kilka dni temu miałem okazję przedstawić pewną wizję związaną z sposobem komunikacji człowieka z technologią. Przybliżyłem pojęcie interfejsu konwersacyjnego oraz przedstawiłem klika ciekawych projektów, które zmieniają sposób wymiany informacji z cyfrową rzeczywistością. Już niedługo napiszę o tym coś więcej, a teraz zapraszam do zapoznania się z prezentacją.</p>
<div id="__ss_11223933" style="width: 425px;"><strong style="display: block; margin: 12px 0 4px;"><a title="Interfejs konwersacyjny" href="http://www.slideshare.net/widmogrod/interfejs-konwersacyjny">Interfejs konwersacyjny</a></strong><object id="__sse11223933" width="425" height="355" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="wmode" value="transparent" /><param name="src" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=interfejskonwersacyjny-120123172107-phpapp02&amp;stripped_title=interfejs-konwersacyjny&amp;userName=widmogrod" /><param name="allowscriptaccess" value="always" /><param name="allowfullscreen" value="true" /><embed id="__sse11223933" width="425" height="355" type="application/x-shockwave-flash" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=interfejskonwersacyjny-120123172107-phpapp02&amp;stripped_title=interfejs-konwersacyjny&amp;userName=widmogrod" allowFullScreen="true" allowScriptAccess="always" wmode="transparent" allowscriptaccess="always" allowfullscreen="true" /></object></p>
<div style="padding: 5px 0 12px;">View more <a href="http://www.slideshare.net/">presentations</a> from <a href="http://www.slideshare.net/widmogrod">widmogrod</a>.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.widmogrod.info/2012/01/interfejs-konwersacyjny-techcamp-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jedyna rzecz, którą możesz stracić to&#8230;</title>
		<link>http://blog.widmogrod.info/2012/01/jedyna-rzecz-ktora-moge-stracic-to/</link>
		<comments>http://blog.widmogrod.info/2012/01/jedyna-rzecz-ktora-moge-stracic-to/#comments</comments>
		<pubDate>Sun, 15 Jan 2012 13:34:51 +0000</pubDate>
		<dc:creator>Gabriel Habryn</dc:creator>
				<category><![CDATA[Przemyślenia]]></category>
		<category><![CDATA[rozwój osobisty]]></category>

		<guid isPermaLink="false">http://blog.widmogrod.info/?p=424</guid>
		<description><![CDATA[Jesteś młody, ambitny i kreatywny? Masz marzenie, pomysł, które chciałbyś zrealizować ale dostrzegasz problemy i bariery, które blokują Cię przed działaniem? Uświadom sobie że jedyną rzecz, którą możesz stracić to Twoja młodość!  Zyskać możesz dużo więcej &#8211; bezcenne doświadczenie i &#8230; <a href="http://blog.widmogrod.info/2012/01/jedyna-rzecz-ktora-moge-stracic-to/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Jesteś młody, ambitny i kreatywny? Masz marzenie, pomysł, które chciałbyś zrealizować ale dostrzegasz problemy i bariery, które blokują Cię przed działaniem?</p>
<p>Uświadom sobie że <strong>jedyną rzecz, którą możesz stracić to Twoja młodość!  </strong>Zyskać możesz dużo więcej &#8211; bezcenne doświadczenie i realizację swoich marzeń.</p>
<p><strong></strong>A teraz, do dzieła!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widmogrod.info/2012/01/jedyna-rzecz-ktora-moge-stracic-to/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>PHP Storm &#8211; w poszukiwaniu optymalnego środowiska programistycznego</title>
		<link>http://blog.widmogrod.info/2012/01/php-storm-w-poszukiwaniu-optymalnego-srodowiska-programistycznego/</link>
		<comments>http://blog.widmogrod.info/2012/01/php-storm-w-poszukiwaniu-optymalnego-srodowiska-programistycznego/#comments</comments>
		<pubDate>Sun, 15 Jan 2012 11:55:11 +0000</pubDate>
		<dc:creator>Gabriel Habryn</dc:creator>
				<category><![CDATA[Aplikacje]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[W poszukiwaniu optymalnego środowiska programistycznego]]></category>
		<category><![CDATA[ide]]></category>
		<category><![CDATA[php storm]]></category>

		<guid isPermaLink="false">http://blog.widmogrod.info/?p=298</guid>
		<description><![CDATA[Jest to pierwszy artykuł z serii &#8222;W poszukiwaniu optymalnego środowiska programistycznego&#8222;, w którym postaram się odpowiedzieć na pytanie czy istnieje IDE, które nie przeszkadza w codziennej pracy programisty i upraszcza najczęściej wykonywane operacje. Przeprowadzane testy polegały na pracy przez około &#8230; <a href="http://blog.widmogrod.info/2012/01/php-storm-w-poszukiwaniu-optymalnego-srodowiska-programistycznego/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div id="attachment_390" class="wp-caption aligncenter" style="width: 411px"><a href="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-19.38.29.png"><img class="size-full wp-image-390" title="Ekran uruchamiania PHP Storm" src="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-19.38.29.png" alt="" width="401" height="303" /></a><p class="wp-caption-text">Ekran uruchamiania PHP Storm</p></div>
<p>Jest to pierwszy artykuł z serii &#8222;<strong><a title="W poszukiwaniu optymalnego środowiska programistycznego" href="http://blog.widmogrod.info/category/w-poszukiwaniu-optymalnego-srodowiska-programistycznego/">W poszukiwaniu optymalnego środowiska programistycznego</a></strong>&#8222;, w którym postaram się odpowiedzieć na pytanie czy istnieje IDE, które nie przeszkadza w codziennej pracy programisty i upraszcza najczęściej wykonywane operacje. Przeprowadzane testy polegały na pracy przez około 5 dni roboczych, w wybranym programie, nad tym samym projektem w celu zmarginalizowania przyzwyczajenia do mojego obecnego zintegrowanego środowiska programistycznego &#8211; Eclipse. Projekt składał się z kilku tysięcy linii kodu. Komputer na jakim pracowałem to 3 GB RAM, Intel Core 2 Duo T5500 i Windows 7 (Opcjonalne Mac OS X ale to w kwestii zrzutów ekranu z PHP Storm).</p>
<h2>PHP Storm &#8211; zintegrowane środowisko programistyczne</h2>
<p>Czym ma być <a title="Strona głowna PHP Storm" href="http://www.jetbrains.com/phpstorm/" target="_blank">PHP Storm</a>, najlepiej mówią twórcy:</p>
<blockquote><p>PhpStorm is a lightweight and smart PHP IDE focused on developer productivity that deeply understands your code, provides smart code completion, quick navigation and on-the-fly error checking. It is always ready to help you shape your code, run unit-tests or provide visual debugging.</p></blockquote>
<p>Przekładając na język Polski:</p>
<blockquote><p>PHP Storm to lekkie i mądre IDE dla PHP koncentrujące się na produktywności i zrozumieniu pisanego kodu. Oferuje podpowiadanie składni, szybką nawigację i sprawdzenie w locie błędów składni. Umożliwia szybkie udostępnianie kodu, testowanie kodu i wizualne debugowanie.</p></blockquote>
<p>W tym artylule postaram się sprawdzić ile jest w tym prawdy. Zapraszam do lektury.</p>
<h2>Tworzenie nowego projektu w PHP Storm</h2>
<p>Pierwszym krokiem zaraz po instalacji IDE, która przebiegła bezproblemowo, było stworzenie nowego projektu. Operacja ograniczyła się do wybrania katalogu z projektem i poczekania kilku sekund aż IDE za-indeksuje pliki. <strong>Już na tym etapie, byłem pod wrażeniem szybkości i łatwości tej operacji</strong> (w Eclipse stworzenie projektu wymagało skorzystania z wizzardu i kilku kliknięć dalej, lecz też nie można powiedzieć że było to skomplikowane ale na pewno indeksowanie plików jest bardziej czasochłonne).</p>
<p>Ciekawym elementem jest to że podczas indeksacji mogłem pracować w projekcie praktycznie bez przeszkód. Jedynymi ograniczeniami był brak możliwości podpowiadania składni i wyszukiwania (Naturalnie w Eclipse też można pracować w trakcie indeksacji jednak to bardziej przypomina szarpankę niż pracę &#8211; subiektywne odczucie)</p>
<p>Po zindeksowaniu projektu przez PHP Storm <strong>zużycie pamięci było o ~250 MB mniejsze niż w przypadku Eclipse</strong>. Eclipse na starcie projektu potrzebuje ok ~550MB. Jest to ogromny plus dla PHP Storm, tym bardziej że w trakcie kilku godzinnej pracy ta wartość wzrasta dla tych IDE o kolejne ~200MB.</p>
<p>Kolejnym ważnym elementem jest <strong>automatyczne wykrywanie systemu kontroli wersji</strong> w projekcie, ale to nie jest wszystko jeżeli chodzi  o ten element. Integracja IDE z systemem kontroli wersji jest dużo bardziej dopracowana niż miałem okazję to spotkać w Eclipse. Na starcie dostajemy bardzo dopracowane moduły podglądu zmian. Selektywnego commit-owania. Automatycznie tworzenie change-logu i dużo dużo więcej.</p>
<div id="attachment_396" class="wp-caption aligncenter" style="width: 310px"><a href="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-20.06.33.png"><img class="size-medium wp-image-396" title="Okno commiitowania zmian" src="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-20.06.33-300x272.png" alt="" width="300" height="272" /></a><p class="wp-caption-text">Okno commiit-owania zmian</p></div>
<h2></h2>
<h2>Przygotowanie PHP Storm do pracy</h2>
<p>Kolejnym krokiem jest zapoznanie się z skrótami klawiszowymi. Tutaj bez zaskoczeń, &#8222;klawiszo-logia&#8221; w PHP Storm pokrywa się z Eclipse w pięciu procentach (np. zapisz, otwórz itp. <img src='http://blog.widmogrod.info/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ). Na szczęście IDE umożliwia zmianę schematu klawiszy do wyboru mamy takie zestawy jak Eclipse, Emacs, NetBeans itp. Praktycznie po tej operacji poczułem się jak w domu.</p>
<div id="attachment_391" class="wp-caption aligncenter" style="width: 178px"><a href="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-19.39.48.png"><img class="size-full wp-image-391" title="Menu wyboru zestawu skrótów klawiaturowych w PHP Storm" src="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-19.39.48.png" alt="" width="168" height="203" /></a><p class="wp-caption-text">Menu wyboru zestawu skrótów klawiaturowych w PHP Storm</p></div>
<p>Dodatkowo można skonfigurować IDE do pracy z bazą danych, GitHub&#8217;em, Debugerem. Standardem kwestii personalizacji IDE jest zachowania tabulatora, wklejania bloków kodu (inteligentne wcięcia), kolorystyki i setki innych elementów. Wszystko intuicyjnie i bezproblemowo.</p>
<h2>Nawigacja w PHP Storm</h2>
<p>Na tym etapie można dostrzec <strong>bardzo dopracowany mechanizm nawigacji po plikach w projekcie</strong>. Posiadamy takie elementy jak panel boczny z drzewem plików w projekcie ale również breadcrumbsy, które bardzo upraszczają nawigację. Praca na kilkunastu plikach rozrzuconych w modelu MVC i odszukiwanie ich w nawigatorze nie jest tak wygodna jak nawigacja w breadcrumbs, która trzyma kontekst aktywnie edytowanego pliku i szybko można przeskoczyć do pliku sąsiedniego.</p>
<div class="wp-caption aligncenter" style="width: 259px"><a href="http://blog.widmogrod.info/wp-content/uploads/2011/07/navigacja_breadcrumbs.png"><img title="Nawigacja breadcrumbs w PHP Storm" src="http://blog.widmogrod.info/wp-content/uploads/2011/07/navigacja_breadcrumbs-249x300.png" alt="Nawigacja breadcrumbs w PHP Storm" width="249" height="300" /></a><p class="wp-caption-text">Nawigacja breadcrumbs w PHP Storm</p></div>
<p>Nie są to jedyne metody nawigacji, moimi ulubionymi sposobami, z których korzystam w codziennej pracy z Eclipse, a które też oferuje PHP Storm jest &#8222;przejdź do&#8221; typu, metody, pliku; przeskakiwania wstecz i wprzód do kolejnych edytowanych sekcji w kodzie oraz przeskakiwanie do definicji metody, klasy, funkcji poprzez najechanie na wykorzystywaną metodę kursorem myszki i naciśnięcie Ctrl+LMB lub podania nazwy w panelu pojawiającym się po naciśnięciu odpowiednich kombinacji klawiszy.</p>
<h2>Programowanie w PHP Storm</h2>
<p><strong>Programowanie w PHP Storm jest jak najbardziej efektywne przez dużą ilość generatorów kodu i rewelacyjne szybkie podpowiadanie składni.</strong> Zwolennicy TDD poczują się jak w raju. Dla przykładu gdy tworzysz zmienną klasową i wciśniemy kombinację Ctrl+Alt+G wywołany zostanie panel z opcjami generowania kodu a wśród nich, generowanie setterów i getterów, implementacja metod interfejsu, nadpisywanie metod klasy głównej itp.</p>
<div id="attachment_401" class="wp-caption aligncenter" style="width: 169px"><a href="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-20.27.35.png"><img class="size-full wp-image-401" title="Panel wyboru opcji generowania kodu w PHP Storm" src="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-20.27.35.png" alt="Panel wyboru opcji generowania kodu w PHP Storm" width="159" height="141" /></a><p class="wp-caption-text">Panel wyboru opcji generowania kodu w PHP Storm</p></div>
<p>Dodatkowo odwołując się do zmiennej lub metody, która jeszcze nie istnieje PHP Storm pozwala ją bardzo szybko wygenerować.</p>
<div id="attachment_402" class="wp-caption aligncenter" style="width: 439px"><a href="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-20.34.17.png"><img class="size-full wp-image-402" title="Generowanie kodu dla nie istniejących metod" src="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-20.34.17.png" alt="Generowanie kodu dla nie istniejących metod" width="429" height="103" /></a><p class="wp-caption-text">Generowanie kodu dla nie istniejących metod</p></div>
<p>Bardzo fajną rzeczą jest możliwość <strong>samodzielnego definiowania typu zmiennej w kodzie</strong> przez prosty komentarz /** @var $element Zend_Form_Element */, dzięki czemu możemy korzystać z podpowiadania składni w każdym miejscu:</p>
<div id="attachment_404" class="wp-caption aligncenter" style="width: 593px"><a href="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-20.50.43.png"><img class="size-full wp-image-404" title="Definiowanie typów zmiennych w PHP Storm" src="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-20.50.43.png" alt="Definiowanie typów zmiennych w PHP Storm" width="583" height="78" /></a><p class="wp-caption-text">Definiowanie typów zmiennych w PHP Storm </p></div>
<h2>Kolorowanie składni i rozpoznawanie błędów w PHP Storm</h2>
<p>Teoretycznie prozaicznie prosty element jak kolorowanie składni, po którym nie spodziewałem się niczego nowego, zyskał nowe funkcjonalności<strong> poprawiające jakość i bezbłędność pisanego kodu</strong>. Teraz nie wykorzystywane nigdzie w kodzie zmienne są oznaczone kolorem szarym, nie zdeklarowane zmienne są podkreślone na czerwono a funkcja, która nie istnieje ma delikatnie żółte tło. Wychwytywanie błędów &#8211; natychmiastowe.</p>
<div id="attachment_407" class="wp-caption aligncenter" style="width: 528px"><a href="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-21.24.22.png"><img class="size-full wp-image-407" title="Rozpoznawanie błędów w locie w PHP Storm" src="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-21.24.22.png" alt="Rozpoznawanie błędów w locie w PHP Storm" width="518" height="190" /></a><p class="wp-caption-text">Rozpoznawanie błędów w locie w PHP Storm</p></div>
<div id="attachment_408" class="wp-caption aligncenter" style="width: 416px"><a href="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-21.20.22.png"><img class="size-full wp-image-408" title="Praca z bazą danych w PHP Storm" src="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-14-o-21.20.22.png" alt="Praca z bazą danych w PHP Storm" width="406" height="241" /></a><p class="wp-caption-text">Praca z bazą danych w PHP Storm</p></div>
<p>Ale to nie wszystkie nowości w inteligentnej składni. Tworząc zmienne i przypisując im kod SQL czy HTML, PHP Storm sam wykryje jaki jest to rodzaj składni i oprócz pokolorowania jej umożliwi wykorzystywanie w jej obrębie podpowiadania składni &#8211; co według mnie jest genialne.</p>
<div id="attachment_412" class="wp-caption aligncenter" style="width: 553px"><a href="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-15-o-12.06.14.png"><img class="size-full wp-image-412" title="Rozpoznawanie składni w zmiennych w PHP Storm" src="http://blog.widmogrod.info/wp-content/uploads/2012/01/Zrzut-ekranu-2012-01-15-o-12.06.14.png" alt="Rozpoznawanie składni w zmiennych w PHP Storm" width="543" height="77" /></a><p class="wp-caption-text">Rozpoznawanie składni w zmiennych w PHP Storm</p></div>
<h2>Podsumowanie</h2>
<p>Osobiście PHP Storm zrobił dla mnie bardzo dobre wrażenie. Szereg funkcji i niuansów poprawiających komfort i efektywność pracy jest powalająca. Nie spotkałem się jeszcze z tak dopracowanym i kompletnym IDE.</p>
<div>Głównymi funkcjami, które uważam za najlepsze z jakimi miałem do czynienie dotychczas w pracy z IDE to:</div>
<ul>
<li>szybkość działania IDE po kilkugodzinnej pracy jest bardzo dobra</li>
<li>nawigacja po kodzie jest bardzo szybka i sprawna</li>
<li>inteligentne podpowiadanie i kolorowanie składni</li>
</ul>
<div>PHP Storm pomimo całej wspaniałości nie jest też bez drobnych wad. Oto niektóre z nich:</div>
<div>
<ul>
<li>gdy piszemy aplikację w PHP 5.3 i wykorzystujemy przestrzenie nazw, tutaj często podpowiadanie kodu nie zadziała &#8211; trzeba deklarować ręcznie typy zmiennych.</li>
<li>ilość jednocześnie otwartych zakładek z plikami jest ograniczona do ok 20 kart</li>
<li>w jednym oknie edytora możemy mieć otwarty tylko jeden projekt, otwarcie kilku projektów to otwarcie nowego okna edytora</li>
</ul>
</div>
<p>Zachęcam wszystkich programistów do przeprowadzenia prostego eksperymentu i samemu odpowiedzenia sobie czy zmiana IDE na PHP Storm jest warta świeczki.</p>
<p>P.S. W powyższym artykule przedstawiłem tylko część funkcjonalności, z których korzystałem w trakcie pracy i nie wątpię że kruczków i smaczków wspomagających codzienną pracę jest dużo więcej.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widmogrod.info/2012/01/php-storm-w-poszukiwaniu-optymalnego-srodowiska-programistycznego/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zend Framework 2 na horyzoncie</title>
		<link>http://blog.widmogrod.info/2011/11/zend-framework-2-na-horyzonciez/</link>
		<comments>http://blog.widmogrod.info/2011/11/zend-framework-2-na-horyzonciez/#comments</comments>
		<pubDate>Sun, 20 Nov 2011 20:05:00 +0000</pubDate>
		<dc:creator>Gabriel Habryn</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Technologie]]></category>
		<category><![CDATA[Zend Framework 2]]></category>

		<guid isPermaLink="false">http://blog.widmogrod.info/?p=375</guid>
		<description><![CDATA[Pod powyższym tytułem został opublikowany artykuł w najnowszym magazynie Imagine. Magazyn jest wydawany przez Empathy i można się z nim zapoznać całkowicie za darmo online: http://issuu.com/imaginemagazine/docs/imagine_no2 Artykuł powstał dwa miesiące temu, ale z dzisiejszego punktu widzenia mogę powiedzieć że kierunek &#8230; <a href="http://blog.widmogrod.info/2011/11/zend-framework-2-na-horyzonciez/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img class="size-medium wp-image-378 alignright" title="Okładka magazynu Imagine z moim artykułem Zend Framework 2 na Horyzoncie" src="http://blog.widmogrod.info/wp-content/uploads/2011/11/Zrzut-ekranu-2011-11-20-o-21.01.15-217x300.png" alt="Okładka magazynu Imagine z moim artykułem Zend Framework 2 na Horyzoncie" width="217" height="300" /></p>
<p>Pod powyższym tytułem został opublikowany artykuł w najnowszym magazynie Imagine.<br />
Magazyn jest wydawany przez Empathy i można się z nim zapoznać całkowicie za darmo online:<br />
<a href="http://issuu.com/imaginemagazine/docs/imagine_no2"> http://issuu.com/imaginemagazine/docs/imagine_no2</a></p>
<p>Artykuł powstał dwa miesiące temu, ale z dzisiejszego punktu widzenia mogę powiedzieć że kierunek rozwoju Zend Framework 2 trzyma się planu. Zagłębiając się bardziej w jego temacie <a href="https://apps.facebook.com/322152434467439">napisałem pierwszą aplikację na FB</a> właśnie przy użyciu ZD2 i Doctrine2.<br />
Mogę powiedzieć że z punktu widzenia programisty jest dużo nowych rzeczy do nauki. ZF2 zmienia sposób pisania aplikacji internetowych. Ale na ten temat na pewno jeszcze napiszę jeszcze kilka słów <img src='http://blog.widmogrod.info/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Jako że w magazynie artykuł ukazał się w wersji skróconej, umieszczam go poniżej w pełnej wersji.<br />
Życzę smacznego!</p>
<div>
<blockquote>
<h2 dir="ltr">Wstęp</h2>
<p dir="ltr">Deweloperzy pracujący nad rozwojem framework’a postawili duży nacisk na to by produkt, który tworzą, był bardziej spójny, dobrze udokumentowany, zwiększający produktywność i szybkość uruchamiania aplikacji. Artykuł opisuje dlaczego i w jaki sposób developerzy chcą zrealizować postawione przez siebie cele. Do pełnego zrozumienia będzie potrzebna podstawowa znajomość pierwszej wersji Zend Framework, wzorców projektowych i PHP 5.3.</p>
<h2 dir="ltr">Prosty i szybki proces nauki</h2>
<p dir="ltr">Pierwszy krok jest najtrudniejszy, to stwierdzenie, dokładnie oddaje najczęściej napotykany problem, przez rozpoczynających przygodę z pierwszą wersją framework’a, programistów. Pomimo dobrej dokumentacji i dopracowania rozdziału „Quick Start”, programista napotyka na dodatkowe problemy związane z rozwojem aplikacji:</p>
<ul>
<li>
<p dir="ltr">Spójność. Dokumentacja opisuje jak korzystać z poszczególnych komponentów takich jak Zend_Cache, Zend_Translate, Zend_Form, itd. ale brakuje kompletnego przykładu, pokazującego jak połączyć istniejące komponenty, w bardziej złożonej i dynamicznie rozszerzanej o nowe funkcjonalności aplikacji.</p>
</li>
<li>
<p dir="ltr">Niekonsekwencja API. Pierwsza wersja framework’a zawiera hepler’y, plugin’y i filtry, niektóre z nich posiadają spójny interfejs a pozostałe już nie. Cześć z nich posiada niejawne metody tworzone poprzez __call(), które trudniej jest znaleźć w kodzie. Część z komponentów pozwala na konfigurację poprzez przekazanie array lub obiektu Zend_Config natomiast pozostałe wyłącznie array. Niektóre komponenty pozwalają na konfigurację camelCaseOption natomiast inne na underscore_separated.</p>
</li>
</ul>
<p dir="ltr">Rozwiązanie, które deweloperzy zaproponowali jako remedium na powyższe problemy można przedstawić w kilku zwięzłych punktach:</p>
<ul>
<li>
<p dir="ltr">Stworzenie podręcznika demonstrującego kompletny cykl tworzenia aplikacji internetowej w ZF2.</p>
</li>
<li>
<p dir="ltr">Udokumentowanie i przedstawienie wszystkich przypadku użycia dla każdego z komponentów</p>
</li>
<li>
<p dir="ltr">Ujednolicenie interfejsów w całym obszarze framework’a, które nie tylko ułatwi proces nauki ale także zwiększy produktywność programisty poprzez eliminację dezorientacji wynikającej z niekonsekwencji w API.</p>
</li>
<li>
<p dir="ltr">Standaryzacja mechanizmu konfiguracji &#8211; stworzenie nowego komponentu, który będzie odpowiedzialny przekazywanie i walidację danych.</p>
</li>
<li>
<p dir="ltr">Przygotowanie sandbox ZF2, który umożliwia błyskawiczny start z framework’iem.</p>
</li>
</ul>
<h2 dir="ltr">Prostota w rozszerzaniu</h2>
<p dir="ltr">Główną zaletą Zend Framework jest jego możliwość rozszerzania, przez dewelopera, o nowe komponenty czy funkcjonalności. Jednak mimo tego że w pierwszej wersji framework’a jest to relatywnie proste to istnieje kilka kluczowych przypadków, dla których taka możliwość jest bardzo utrudniona:</p>
<ol>
<li>
<p dir="ltr">Wykorzystanie Singleton’ów w wielu miejscach w aplikacji, bardzo komplikuje lub wręcz uniemożliwia rozszerzenie lub podmianę funkcjonalności. Przykładami takich komponentów to Zend_Controller_Front, Zend_Auth, Zend_Session.</p>
</li>
<li>
<p dir="ltr">Częste użycie klas abstrakcyjnych zamiast interfejsów, powoduje rozszerzanie lub podmianę komponentów znacznie trudniejszym. Część z klas abstrakcyjnych jest już bardzo bogata w elementy, które w nowej funkcjonalności nie potrzebujemy, w konsekwencji podmieniony kod posiada dużą ilością zbędnych metod.</p>
</li>
<li>
<p dir="ltr">Twarde zależności uniemożliwiają w wielu miejscach rozdzielenie funkcjonalności  lub jej podmianę na nową. Najlepszym przykładem jest Zend_View, który jest nierozłącznym składnikiem wielu komponentów np.: Zend_Controllerze_Action, Zend_Form przez co próba skorzystania z Smarty lub OPT zamiast standardowego systemu szablonów jest bardzo utrudniona.</p>
</li>
<li>
<p dir="ltr">Brak możliwości rozszerzenia elementów, z których użytkownik mógłby wynieść wiele korzyści. Idealnym przykładem jest Zend_Db, który gdyby oferował możliwość rozszerzania o plugin’y mógłby zaoszczędzić pracy przy tworzeniu struktur drzewiastych, cachowania itp. a dodatkowo kod byłby wielokrotnego użytku.</p>
</li>
</ol>
<p dir="ltr">Podstawowy plan działań jaki został obrany przez deweloperów by rozwiązać powyższe problemy, można streścić w kilku punktach:</p>
<ul>
<li>
<p dir="ltr">Identyfikacja kluczowych interfejsów dla komponentów i typowanie/żutowanie do nich zamiast do klas abstrakcyjnych.</p>
</li>
<li>
<p dir="ltr">Usunięcie singletonów gdzie tylko jest to możliwe, natomiast jeżeli nie jest to możliwe przenieść zachowanie do obiektów współpracujących (collaborating objects)</p>
</li>
<li>
<p dir="ltr">Usunięcie twardych zależności na rzecz DI</p>
</li>
<li>
<p dir="ltr">Określenie komponentów, które powinny pozwalać na rozszerzalność i współpracę z innymi obiektami.</p>
</li>
</ul>
<h2 dir="ltr">Poprawiona wydajność</h2>
<p dir="ltr">Szybkość działania pierwszej wersji framework’a, zachwycała tylko na początku (do wydania 1.5) a z każdą jego kolejną odsłoną szybkość stopniowo spadała. Developerzy, podejmując pracę nad drugą wersją framework’a, określili sobie za cel poprawę wydajności rzędu 200-300%.</p>
<p dir="ltr">Jako że jest już dostępne do testowania developerskie wydanie ZF2 to można stwierdzić iż separacja zależności i wykorzystanie na szeroką skalę dependency injection oraz lazy load przynosi spodziewane korzyści, ale to nie wszystko. Całkowicie został przebudowana modułowość i MVC. Teraz moduł jest elementem niezależnym od MVC. Moduł może korzystać z MVC i definiować własny bootstrap, routing i konfigurację. W dużych i różnorodnych projektach takie podejście do problemu może mieć ogromny wpływ na poprawę wydajności gdyż moduł będzie ładował tylko to co jest konieczne dla jego prawidłowego działania.</p>
<p dir="ltr">Kolejnym etapem w poprawie wydajności jest pomoc programiście w zdobyciu informacji o dobrych praktykach optymalizacyjnych. Developerzy chcą to osiągnąć poprzez stworzenie odpowiedniego działu w dokumentacji.</p>
<h2 dir="ltr">Rozwój i utrzymanie</h2>
<p dir="ltr">Rosnąca popularność ZF niesie za sobą ogromną ilość zmian i nowych komponentów. Na chwilę obecną projekt składa się z 2 milionów linii kodu w tym 14 tysięcy linii testów jednostkowych. Nad jego rozwojem i spójnością czuwają trzy osoby z zespołu Zend’a i ogromna ilość programistów z całego świata zaangażowana w jego rozwój i tworząca nowe komponenty.</p>
<p dir="ltr">Projekt o takiej skali wymaga odpowiedniego podejścia do rozwoju i utrzymania. Jednym z rozwiązań mającym pomóc w tym zadaniu jest przejście z centralizowanego systemu kontroli wersji na rozproszony system kontroli wersji &#8211; GIT &#8211; jest on znany developerom, zapewnia możliwość weryfikacji i identyfikowania programistów współpracujących nad kodem, umożliwi łatwe łatanie i łączenie zmian dzięki czemu jest bardziej skutecznym narzędziem w prowadzeniu i utrzymywaniu projektu.</p>
<p dir="ltr">Kolejnym aspektem rozwoju jest integracja z projektami firm trzecich. Do tej pory taka integracja była nie lada wyzwaniem (wprowadzenie Zend_Application uprościło ten proces). Teraz developerzy zamierzają jasno i klarowne określić w jaki sposób biblioteki powinny być integrowane z ZF2 co zapewni dostęp do bardziej wszechstronnych rozwiązań dla użytkownika bez nakładu dodatkowej pracy.</p>
<h2 dir="ltr">Wzór wykorzystania PHP 5.3</h2>
<p dir="ltr">PHP 5.3 wnosi do języka wiele nowości: przestrzenie nazw, funkcje anonimowe, late static binding, goto itd. dlatego jak najbardziej zrozumiałym jest podejście developerów do wykorzystania tego potencjału.</p>
<p dir="ltr">Można wyróżnić następujące etapy, które zostaną uwzględnione podczas re-factoringu kodu źródłowego framework’a:</p>
<ul>
<li>
<p dir="ltr">Migracja na przestrzenie nazw w celu zniwelowania kolizji w nazewnictwie z bibliotekami firm trzecich jak i kodu prywatnego użytkownika.</p>
</li>
<li>
<p dir="ltr">Usunięcie wszystkich wywołań create_funciton() i zastąpienie go funkcjami anonimowymi.</p>
</li>
<li>
<p dir="ltr">Identyfikacja kodu, który może skorzystać z nowości w PHP 5.3</p>
</li>
</ul>
<h2 dir="ltr">Podsumowanie</h2>
<p>Pierwsze szkice planu rozwoju drugiej odsłony framework’a jasno wskazywały że będziemy mieli do czynienia z ewolucją ukierunkowaną na wykorzystanie nowych możliwości PHP 5.3, aktualizację dokumentacji, poprawienie wydajności. Jednak z czasem obraz ten nabiera coraz to większej ostrości.Obecnie, mimo że mamy do czynienia jeszcze z wydaniem alpha, to projekt w implementacji jest na tyle rewolucyjny w porównaniu do poprzedniej wersji framework’a że przez moment zastanawiałem się czy nie było by stosownym zmienić jego nazwę. Osobiście podoba mi się kierunek rozwoju i z niecierpliwością czekam na pierwszą betę, która ma zostać wydana pomiędzy 17-20 października podczas trwania ZendCon 2011. Zachęcam wszystkich zainteresowanych programistów PHP do śledzenia projektu na github oraz uczestnictwa grupie dyskusyjnej.</p>
<h3 dir="ltr">Słownik:</h3>
<ul>
<li>
<p dir="ltr">ZF &#8211; Zend Frameork</p>
</li>
<li>
<p dir="ltr">DI &#8211; Dependency Injection</p>
</li>
<li>
<p dir="ltr">MVC &#8211; Model View Controller</p>
</li>
</ul>
<h3 dir="ltr">Linki:</h3>
<ul>
<li>
<p dir="ltr"><a href="http://zendcon.com/">http://zendcon.com/</a></p>
</li>
<li>
<p dir="ltr"><a href="http://karwin.blogspot.com/2010/04/dont-put-cart-before-horse.html">http://framework.zend.com/zf2/blog</a></p>
</li>
<li>
<p dir="ltr"><a href="http://framework.zend.com/wiki/display/ZFDEV2/Zend+Framework+2.0+Requirements">http://framework.zend.com/wiki/display/ZFDEV2/</a></p>
</li>
<li>
<p dir="ltr"><a href="https://github.com/zendframework">https://github.com/zendframework</a></p>
</li>
</ul>
</blockquote>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.widmogrod.info/2011/11/zend-framework-2-na-horyzonciez/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHPCon 2011 &#8211; wrażenia</title>
		<link>http://blog.widmogrod.info/2011/10/phpcon-2011-wrazenia/</link>
		<comments>http://blog.widmogrod.info/2011/10/phpcon-2011-wrazenia/#comments</comments>
		<pubDate>Thu, 27 Oct 2011 06:25:43 +0000</pubDate>
		<dc:creator>Gabriel Habryn</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Konferencja]]></category>
		<category><![CDATA[PHPCon]]></category>
		<category><![CDATA[PHPCon2011]]></category>

		<guid isPermaLink="false">http://blog.widmogrod.info/?p=367</guid>
		<description><![CDATA[Właśnie ochłonąłem po PHPCon2011 i chcę wam napisać co się działo&#8230; bo się działo!! Konferencja zgromadziła w jednym miejscu blisko 180 programistów PHP. Przez te trzy dni przeprowadzono bardzo wiele ciekawych prezentacji. Między prelegentami były takie takie osoby jak Derick &#8230; <a href="http://blog.widmogrod.info/2011/10/phpcon-2011-wrazenia/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Właśnie ochłonąłem po PHPCon2011 i chcę wam napisać co się działo&#8230; bo się działo!!</p>
<p>Konferencja zgromadziła w jednym miejscu blisko 180 programistów PHP. Przez te trzy dni przeprowadzono bardzo wiele ciekawych prezentacji. Między prelegentami były takie takie osoby jak Derick Rethans, twórca Xdebug, który opowiedział o profilowaniu aplikacji; David Coallier, prezes PHP PEAR Group i współtwórca trzonu PHP &#8211; przedstawił informację o przyszłości PHP; Z prelegentów z polski można wymienić chociażby Krzyśka Szłapińskiego z Allegro, który opowiedział o architekturze Allegro (Lista wszystkich prezentacji jest dostępna pod tym adresem: http://phpcon.pl/2011/agenda).</p>
<p>Ogromna ilość prezentacji świetny klimat spowodował że rozmowy kuluarowe trwały do białego rana. Bardzo ciekawym elementem pierwszego dnia było lighting talking. Każdy z gości mógł bez wcześniejszej rejestracji wystąpić przed wszystkimi z krótką prezentacją. Dlatego korzystając z okazji zabrałem głos i przedstawiłem krótką historię rozwoju Zend Framework 2 <img src='http://blog.widmogrod.info/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  (niedługo artykuł na ten temat ukaże się na blogu).</p>
<p>Jedynym elementem, z całek konferencji, do którego można by mieć zarzut to brak dłuższych przerw pomiędzy prezentacjami. Prelekcje były usiane tak gęsto mi osobiście zabrakło czasu na odpoczynek czy nawet dyskusję na temat poszczególnych tematów.</p>
<p>Wszystkim którzy byli dziękuję za świetną imprezę! tych których zabrakło lub nie byli szczerze zapraszam na przyszły rok! konferencja jest niesamowita <img src='http://blog.widmogrod.info/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widmogrod.info/2011/10/phpcon-2011-wrazenia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zend Framework 2 &#8211; KrakSpot TECH #6</title>
		<link>http://blog.widmogrod.info/2011/09/krakspot-tech-6/</link>
		<comments>http://blog.widmogrod.info/2011/09/krakspot-tech-6/#comments</comments>
		<pubDate>Fri, 30 Sep 2011 20:42:13 +0000</pubDate>
		<dc:creator>Gabriel Habryn</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Prezentacje]]></category>
		<category><![CDATA[krak spot tech]]></category>
		<category><![CDATA[zend framework]]></category>
		<category><![CDATA[zf2]]></category>

		<guid isPermaLink="false">http://blog.widmogrod.info/?p=356</guid>
		<description><![CDATA[Już w najbliższy czwartek 6 października o godzinie 18:30 odbędzie się w Albotak KrakSpot TECH #6. Jest to o tyle ciekawe wydarzenie gdyż będę miał przyjemność poprowadzenia już po raz drugi prezentację na KrakSpot TECH. Temat mojej 15 minutowej prezentacji &#8230; <a href="http://blog.widmogrod.info/2011/09/krakspot-tech-6/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Już w najbliższy czwartek 6 października o godzinie 18:30 odbędzie się w Albotak <a href="http://krakspot.pl/2011/09/30/krakspot-tech-6/">KrakSpot TECH #6</a>.</p>
<p>Jest to o tyle ciekawe wydarzenie gdyż będę miał przyjemność poprowadzenia już po raz drugi prezentację na KrakSpot TECH.<br />
Temat mojej 15 minutowej prezentacji będzie związaną z nadchodzącą odsłoną Zend Framework 2.</p>
<p>Zapraszam wszystkich programistów PHP tworzących swoje aplikacje w ZF będzie dużo fajnych informacji i będzie konkurs z fajnymi mini nagrodami <img src='http://blog.widmogrod.info/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>UPDATE: Niestety KrakSpotTECH został odwołany&#8230; ale już wiem, że na zaprezentuję informację o ZF2 na nowej konferencji organizowanej w Krakowie! bądźcie czujni! <img src='http://blog.widmogrod.info/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widmogrod.info/2011/09/krakspot-tech-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zaktualizowałem wiki o kilka ciekawych działów</title>
		<link>http://blog.widmogrod.info/2011/08/zaktualizowalem-wiki-o-kilka-ciekawych-dzialow/</link>
		<comments>http://blog.widmogrod.info/2011/08/zaktualizowalem-wiki-o-kilka-ciekawych-dzialow/#comments</comments>
		<pubDate>Sun, 14 Aug 2011 11:16:06 +0000</pubDate>
		<dc:creator>Gabriel Habryn</dc:creator>
				<category><![CDATA[Cappuccino]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[cappuccino framework]]></category>
		<category><![CDATA[Circuit Breaker]]></category>
		<category><![CDATA[JS]]></category>

		<guid isPermaLink="false">http://blog.widmogrod.info/?p=340</guid>
		<description><![CDATA[Dzisiaj zabrałem się za porządkowanie mojej wiki, która jest dla mnie najlepszym sposób kolekcjonowania informacji. Wiki znajdziecie pod adresem wiki.widmogrod.info. Tak &#8222;biblioteka wiedzy&#8221; wzbogaciła się m.in. w: Programowanie - Różne różności związane z PHP, JS, IDE, Wzorcami projektowymi itp.. JavaScript - co można jeszcze z &#8230; <a href="http://blog.widmogrod.info/2011/08/zaktualizowalem-wiki-o-kilka-ciekawych-dzialow/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Dzisiaj zabrałem się za porządkowanie mojej wiki, która jest dla mnie najlepszym sposób kolekcjonowania informacji.<br />
Wiki znajdziecie pod adresem <a href="http://wiki.widmogrod.info">wiki.widmogrod.info</a>.</p>
<p>Tak &#8222;biblioteka wiedzy&#8221; wzbogaciła się m.in. w:</p>
<ul>
<li>
<div><a title="playground:playground:programowanie" href="http://wiki.widmogrod.info/playground:playground:programowanie">Programowanie</a> - Różne różności związane z <acronym title="Hypertext Preprocessor">PHP</acronym>, <acronym title="JavaScript">JS</acronym>, IDE, Wzorcami projektowymi itp..</div>
</li>
<li>
<div><a title="playground:playground:javascript" href="http://wiki.widmogrod.info/playground:playground:javascript">JavaScript</a> - co można jeszcze z niego wyciągnąć?..</div>
</li>
<li>
<div><a title="playground:playground:bezpieczenstwo" href="http://wiki.widmogrod.info/playground:playground:bezpieczenstwo">Bezpieczeństwo aplikacji w internecie</a> - zbiór artykułów i pojęć</div>
</li>
<li>
<div><a title="playground:playground:mac" href="http://wiki.widmogrod.info/playground:playground:mac">Mac</a> - programy na Mac…</div>
</li>
</ul>
<p>Jak by ktoś z was był zainteresowany różnego rodzaju dodatkowymi informacjami o <a href="http://wiki.widmogrod.info/cappuccino">Cappuccino Framework</a> i społeczności wokuł niego to zapraszam do działu <a title="playground:playground:cappuccino" href="http://wiki.widmogrod.info/playground:playground:cappuccino">Szkice i różne materiały dodatkowe o Cappuccino Framework</a>.</p>
<p>Z działu programowanie najbardziej podoba mi się ciekawy wzorzec projektowy Circuit Breaker.<br />
Umieściłem w tym dziale link do artykułu, który zawiera  POC implementacji go w Zend Framework.</p>
<p>Natomiast w dziale JavaScript podoba mi się nowy język programowania, który jest kompilowany do JavaScript &#8211; CoffeeScript.</p>
<p>To tyle, pozdrawiam!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widmogrod.info/2011/08/zaktualizowalem-wiki-o-kilka-ciekawych-dzialow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cappuccino Framework na Meet.js</title>
		<link>http://blog.widmogrod.info/2011/07/cappuccino-framework-na-meet-js/</link>
		<comments>http://blog.widmogrod.info/2011/07/cappuccino-framework-na-meet-js/#comments</comments>
		<pubDate>Sat, 30 Jul 2011 20:43:06 +0000</pubDate>
		<dc:creator>Gabriel Habryn</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Prezentacje]]></category>
		<category><![CDATA[kraków]]></category>
		<category><![CDATA[meet.js]]></category>
		<category><![CDATA[przezentacja]]></category>

		<guid isPermaLink="false">http://blog.widmogrod.info/?p=358</guid>
		<description><![CDATA[31 lipca br miało miejsce świetne wydarzenie w Krakowie &#8211; Meet.js. Czym jest meet.js i jaki przyświeca cel tego typu spotkaniom, najlepiej odda poniższy cytat: W założeniu meet.js to comiesięczne, niekomercyjne spotkania entuzjastów front-endu i programowania webowego. Prelekcje (po polsku) &#8230; <a href="http://blog.widmogrod.info/2011/07/cappuccino-framework-na-meet-js/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>31 lipca br miało miejsce świetne wydarzenie w Krakowie &#8211; Meet.js.</p>
<p>Czym jest meet.js i jaki przyświeca cel tego typu spotkaniom, najlepiej odda poniższy cytat:</p>
<blockquote><p>W założeniu meet.js to comiesięczne, niekomercyjne spotkania entuzjastów front-endu i programowania webowego. Prelekcje (po polsku) trwają od 10 do 15 minut (plus 10 minut Q&#038;A), gdzie każdy może zgłosić swoją kandydaturę do wystąpienia przed publicznością. Warunki są dwa – spicz o front-endzie bez nachalnego spamowania swojej firmy czy produktu. Wejście oczywiście za darmo!</p></blockquote>
<p>Miałem przyjemność wystąpić jako prelegent w świetnym towarzystwie:<br />
- Katarzyna Drzyzga (Zanim wpiszesz „advanced JavaScript” do CV)<br />
- Marek Stępień (ECMAScript 6: let)<br />
- Wojciech Zając (Dostępność, WAI-ARIA)<br />
- Tobiasz Glazar (PhoneGap)</p>
<p>Wystąpiłem z prezentacją dotyczącą Cappuccino Framework. Jeżeli ktoś jest zainteresowany nią zainteresowany to poniżej umieszczam ją w całości:</p>
<p>&nbsp;</p>
<div style="width:425px" id="__ss_9492170"><strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/widmogrod/cappuccino-framework" title="Cappuccino Framework">Cappuccino Framework</a></strong><object id="__sse9492170" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=cappuccinoframeworkgabrielhabryn-110930155554-phpapp01&#038;stripped_title=cappuccino-framework&#038;userName=widmogrod" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed name="__sse9492170" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=cappuccinoframeworkgabrielhabryn-110930155554-phpapp01&#038;stripped_title=cappuccino-framework&#038;userName=widmogrod" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="padding:5px 0 12px">View more <a href="http://www.slideshare.net/">presentations</a> from <a href="http://www.slideshare.net/widmogrod">widmogrod</a>.</div>
</div>
<p>&nbsp;</p>
<p>Buzz:<br />
- <a href="http://ferrante.pl/frontend/javascript/meet-js-wielka-ofensywa-lipcowa/">http://ferrante.pl/frontend/javascript/meet-js-wielka-ofensywa-lipcowa/</a><br />
- <a href="http://www.imagineblog.pl/lipiec-w-empathy/">http://www.imagineblog.pl/lipiec-w-empathy/</a><br />
- <a href="http://ferrante.pl/frontend/javascript/wielka-ofensywa-lipcowa-meet-js-zakonczona-udanie/">http://ferrante.pl/frontend/javascript/wielka-ofensywa-lipcowa-meet-js-zakonczona-udanie/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widmogrod.info/2011/07/cappuccino-framework-na-meet-js/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

