PROGRAMISTA 2013 SPIS TREŚCI nr 1 6 Sphinx - wydajny i skalowalny silnik wyszukiwania pełnotekstowego / Mariusz Gil 12 Wprowadzenie do języka C# i platformy.net (część 5) / Przemysław Krygier PROGRAMOWANIE 18 Mechanizmy zarządzania stanem przy programowaniu gier (część 1) / Rafał Kocisz 26 Jak tworzyć testowalny kod? (część 2). Lokalizowanie komponentów / Michał Mac APLIKACJE WEBOWE 32 Kontrolowanie sprzętu poprzez interfejs webowy - przykład praktycznej realizacji / Daniel Kraszewski 34 Diabeł tkwi w szczegółach: hosting plików / Gynvael Coldwind 40 Poznaj ASP.NET MVC 4 (część 2). Trzy warstwy naszej aplikacji / Karol Rogowski 46 Startup w Rails - #2 Facebook Graph API i zarządzanie wydarzeniami / Grzegorz Forysiński BAZY DANYCH 50 Systemy klasy OLAP oraz język MDK. Możliwości wielowymiarowej analizy danych / Łukasz Mazur 56 Receptury projektowe - niezbędnik początkującego architekta. Część 1 / Sławomir Sobótka INŻYNIERIA OPROGRAMOWANIA 66 Kategoryzowanie wymagań dla rozwiązań IT / Artur Machura 68 Wgryźć się w projekt - czyli o rozwoju kompetencji w IT / Łukasz Lechert 70 Język wzorców. Najlepsze strategie skutecznych programistów / Michał Bartyzel, Mariusz Sieraczkiewicz FELIETON 72 Szum w Deadlistingu 74 "Siedem języków w siedem tygodni" / Rafał Kocisz
nr 2 7 Współbieżna obsługa zdarzeń bez wątków / Robert Nowak 11 AddressSanitizer: szybki detektor błędów pamięci / Mateusz Jurczyk 20 Wprowadzenie do języka C# i platformy.net (część 6) / Przemysław Krygier PROGRAMOWANIE 26 CUDA w dot NETcie / Marek Sawerwain 32 Programowanie GUI w WinAPI / Wojciech Sura 38 Jak tworzyć testowalny kod? (część 3) / Michał Mac PROGRAMOWANIE URZĄDZEŃ MOBILNYCH 42 ios 6 aplikacja Passbook / Łukasz Mazur 50 Poznaj ASP.NET MVC 4 (część 3). Modele w naszej aplikacji / Karol Rogowski ALGORYTMIKA 56 Oswoić rekurencję / Krzysztof Kliś AGILE 60 Szacunek przede wszystkim / Krystian Kaczor 64 Receptury projektowe niezbędnik początkującego architekta Część II: Mock czy Stub? Command-query Separation prawdę ci powie / Sławomir Sobótka INŻYNIERIA OPROGRAMOWANIA 70 Projektowanie systemów informatycznych / Artur Machura ZARZĄDZANIE PROJEKTAMI 74 Od chaosu, przez procesy, do zwinności / Jacek Wieczorek 76 Budowanie autorytetu w zespole. Nie taki diabeł straszny jak wiesz, jak to zrobić / Kamil Plasan 78 Perl. Najlepsze Rozwiązania / Rafał Kocisz
nr 3 6 Przechwytywanie wywołań funkcji w bibliotekach DLL / Bartosz Wójcik PROGRAMOWANIE URZĄDZEŃ MOBILNYCH 10 ios 6 - ekosystem Passbook'a / Łukasz Mazur 18 Androidowe Listy & Adaptery / Maciej Górski PROGRAMOWANIE SYSTEMÓW OSADZONYCH 26 VHDL - gdy mamy już dość C/C++/C# i Javy / Marek Sawerwain PROGRAMOWANIE ROZWIĄZAŃ SERWEROWYCH 34 Deployment aplikacji dla Ruby on Rails / Marcin Czesak 38 Poznaj ASP.NET MVC 4 (część 4) Formy z bliska i z daleka / Karol Rogowski 42 Ruby on Rails-ActiveRecord w praktyce / Kamil Baćkowski 46 Startup w Rails-#3 Interfejs z Bootstrap / Grzegorz Forysiński PROGRAMOWANIE GRAFIKI 52 Programowanie okienek w języku Ruby / Tomasz Wielgocki PROGRAMOWANIE APLIKACJI DESKTOPOWYCH 56 Rozszerzanie możliwości aplikacji / Wojciech Sura TESTOWANIE I ZARZĄDZANIE JAKOŚCIĄ 62 Test i Behaviour Driven Development - duet wspomagający pracę programisty / Łukasz Lechert 66 Test Driven Development - support i zastosowanie w Ruby on Rails / Michał Krajewski LABORATORIUM MACOPEDIA 70 Poznaj TYPO3 CMS / Tomasz Grzemski 72 x-driven Design, y-driven Development niczego nie zmienią / Michał Bartyzel, Mariusz Sieraczkiewicz WYWIAD 72 Szukamy wyjątkowych programistów / Rozmowa ze Zbigniewem Rybczyńskim 78 Perełki programowania gier / Rafał Kocisz
nr 4 6 Pisanie wydajnego kodu C++ / Adam Sawicki 12 Wprowadzenie do języka C# i platformy.net (część 7) / Przemysław Krygier 22 Gry Indie droga niezależnego twórcy. Pierwsze kroki w świecie gier dla systemu Android / Andrzej Jóźwiak (Mobica) PROGRAMOWANIE URZĄDZEN MOBILNYCH 30 Poznaj ASP.NET MVC 4. Walidacja danych na stronie / Karol Rogowski PROGRAMOWANIE BAZ DANYCH 36 Wprowadzenie do projektowania hurtowni danych / Agnieszka Chodkowska-Gyurics ALGORYTMIKA 42 Kompresja danych / Wojciech Sura INŻYNIERIA OPROGRAMOWANIA 48 Jak tworzyć testowalny kod? / Michał Mac AGILE 52 Teoria Scrum czyli czysta praktyka / Krystian Kaczor ZARZĄDZANIE PROJEKTAMI 58 Czy IT potrzebuje umiejętności "miękkich"? / Łukasz Lechert 60 Receptury projektowe niezbędnik początkującego architekta / Sławomir Sobótka LABORATORIUM MACOPEDIA 66 Poznaj TYPO3 CMS. Podłączanie szablonu / Tomasz Grzemski 70 Miary efektywności w pracy zespołu programistycznego / Michał Bartyzel, Mariusz Sieraczkiewicz WYDARZENIE 76 Relacja z Agile Dev Practices 2013 / Krystian Kaczor 78 Nowoczesne projektowanie w C++ / Rafał Kocisz
nr 5 6 Koncepcja modelu Git-flow z wykorzystaniem w SourceTree / Łukasz Mazur 14 Lazarus nie zapominajmy o Pascalu / Marek Sawerwain PROGRAMOWANIE SYSTEMOWE 20 Zabawy z dynamicznym linkerem w Linuksie / Krzysztof Kliś 22 Uczymy się ASP.NET MVC 4 (część 6) Formatowanie adresów URL / Karol Rogowski 26 Mechanizmy zarządzania stanem przy programowaniu gier (część 2) / Rafał Kocisz PROGRAMOWANIE BAZ DANYCH 32 Wprowadzenie do projektowania hurtowni danych. Część 2 Fakty / Agnieszka Chodkowska-Gyurics 38 Wstęp do nierelacyjnych baz danych na przykładzie MongoDB / Jędrzej Czarnecki PRZETWARZANIE RÓWNOLEGŁE I ROZPROSZONE 42 Wątki zarządzane w aplikacjach Windows Forms a interfejs użytkownika / Dawid Borycki ALGORYTMIKA 48 Liczba "Pi" algorytm BBP i typ BigInteger w C# / Jacek Matulewski INŻYNIERIA OPROGRAMOWANIA 52 Techniki utrudniające inżynierię wsteczną złośliwego oprogramowania / Bartosz Wójcik 62 Jak tworzyć testowalny kod? Cross-cutting concerns AOP / Michał Mac 66 Receptury projektowe. Część III: Zarządzenie złożonością przez trójpodział logiki Open/closed principle w praktyce / Sławomir Sobótka LABORATORIUM MACOPEDIA 72 TYPO3 Extbase Stwórz własne rozszerzenie do TYPO3 / Piotr Molewski 76 Jak całkowicie odmienić sposób programowania, używając refaktoryzacji (część 1) / Mariusz Sieraczkiewicz 78 "Wzorce Projektowe" / Rafał Kocisz
nr 6 : 6 Git Głupi Protokolant Treści / Bartosz Taudul 14 Programowanie aplikacji finansowych - Wprowadzenie do platformy xapi / Paweł Kozikowski, Oskar Dylewski 18 Google Analitics SDK v2.0 dla systemu ios / Łukasz Mazur 26 C# tips&tricks / Michał Mac 30 Jedność w różnorodności. Współdzielenie kodu.net między Windows 8 i Windows Phone 8 / Marcin Kruszyński PROGRAMOWANIE SYSTEMOWE 44 Bliżej silikonu #1 / Gynvael Coldwind, Mateusz Jurczyk 56 Programista vs włamywacz, czyli o bezpieczeństwie aplikacji internetowych w PHP / Michał Leszczyński 66 Aplikacje internetowe wykorzystujące Python. Biblioteki Flup, Web2py, Django / Robert Nowak 70 Poznaj ASP.NET MVC 4. Optymalizować czy nie optymalizować? Oto jest pytanie / Karol Rogowski PRZETWARZANIE RÓWNOLEGŁE I ROZPROSZONE 78 Wątki zarządzane w aplikacjach Windows Presentation Foundation a interfejs użytkownika / Dawid Borycki PROGRAMOWANIE BAZ DANYCH 86 Wprowadzenie do projektowania hurtowni danych. Część 3 źródła i ładowanie danych / Agnieszka Chodkowska-Gyurics 90 Lochy albo "dungeony", czyli prototyp gry w Unity3D / Marek Sawerwain PROGRAMOWANIE GRAFIKI 98 O Demoscenie / Adam Sawicki WYWIAD 106 Rozmowa z Tomaszem Laszukiem INŻYNIERIA OPROGRAMOWANIA 108 Zarządzanie ryzykiem w metodykach Agile na przykładzie Scrum / Bartosz Chrabski 114 Polimorficzne algorytmy szyfrowania / Bartosz Wójcik 126 IBM Rational Test Automation / Łukasz Mazur 128 Mapowanie relacyjno-obiektowe prawdziwych obiektów rzecz o DDD i JPA / Sławomir Sobótka
132 Jak całkowicie odmienić sposób programowania, używając refaktoryzacji - część 2 / Mariusz Sieraczkiewicz FELIETON 134 Development to nie tylko kod / Mateusz Harasymczuk 138 Hakerzy i malarze. Wielkie idee ery komputerów / Rafał Kocisz
nr 7 6 Inteligentne wskaźniki w C++11 / Adam Sawicki 18 Wyrażenia regularne w C++11: praktyczne wprowadzenie / Rafał Kocisz PROGRAMOWANIE URZĄDZEŃ MOBILNYCH 24 PhoneGap: aplikacje mobilne w HTML5 i JavaScript / Paweł Wolniewicz 38 Poznaj ASP.NET MVC 4. Co było najpierw testy czy aplikacja? / Karol Rogowski 44 Lochy albo "dungeony", czyli prototyp gry w Unity3D, część druga. Schodzimy głębiej / Marek Sawerwain PRZETWARZANIE RÓWNOLEGŁE I ROZPROSZONE 50 Architektura platformy gier online / Maciej Mróz 54 Kontekst synchronizacji / Dawid Borycki, Jacek Matulewski WYWIAD 58 O Qubes OS i nie tylko / Rozmowa z Joanną Rutkowską ALGORYTMIKA 60 Podstawy mechaniki klasycznej dla programistów gier, czyli rzecz o tym, jak całkować równanie ruchu / Jacek Matulewski FELIETON 64 Skuteczne szkolenia w IT / Krystian Kaczor 68 Wzorce analityczne modeli biznesowych na przykładzie Party odkrywanie krok po kroku kolejnych rozwiązań / Dorota Pawelec - Sobótka 74 Jak całkowicie odmienić sposób programowania, używając refaktoryzacji / Mariusz Sieraczkiewicz 78 Refaktoryzacja. Ulepszanie struktury istniejącego kodu / Rafał Kocisz
nr 8 6 Aplikacje w chmurze, czyli jak korzystać z IBM SmartCloud Enterprise / Radosław Smilgin, Michał Zacharuk 12 Sztuczki i idiomy w języku C++ / Sławomir Zborowski 22 Biblioteka jquery mobile a wieloplatformowe witryny i aplikacje internetowe / Dawid Borycki 28 Tworzenie gier na Firefox OS / Sebastian Rosik PROGRAMOWANIE GRAFIKI 42 Szybka grafika 2D odcinek 1 / Bartosz Taudul PRZETWARZANIE RÓWNOLEGŁE I ROZPROSZONE 52 C++ AMP dodatkowa moc obliczeniowa dla każdego / Marek Sawerwain PROGRAMOWANIE URZĄDZEŃ MOBILNYCH 58 Location based services: obsługa lokalizacji pod Android OS / Michał Zawalich PROGRAMOWANIE BAZ DANYCH 60 Kolumnowe bazy danych za i przeciw / Agnieszka Chodkowska-Gyurics 64 Indeksy w bazie MongoDB / Bartosz Wysocki 72 Jak całkowicie odmienić sposób programowania używając refaktoryzacji (część 4) / Mariusz Sieraczkiewicz 74 Scrum jakiego nie znacie. Co można zmieniać i jak? / Michał Bartyzel, Mariusz Sieraczkiewicz 78 Git. Rozproszony system kontroli wersji / Rafał Kocisz
nr 9 6 Własna platforma tradingowa. Tworzenie platformy finansowej w Javie z użyciem xapi / Oskar Dylewski, Paweł Kozikowski 12 NuGet, czyli zabawa paczkami w wydaniu Microsoftu / Karol Rogowski 18 Twitter Bootstrap szybkie tworzenie witryn HTML / Łukasz Mazur 26 Tworzenie gier na Firefox OS cz. 2 / Sebastian Rosik 36 Pomiar czasu w programowaniu gier / Adam Sawicki PROGRAMOWANIE URZĄDZEŃ MOBILNYCH 46 Corona SDK. Multiplatformowe programowanie na urządzenia mobilne / Grzegorz Gałęzowski 60 Analiza ruchu nieoczywisty problem z aplikacją / Konrad Madej 64 Autoryzacja i uwierzytelnianie w ASP.NET MVC 5 i Visual Studio 2013 / Dawid Borycki 78 Język C++ i przetwarzanie współbieżne w akcji / Rafał Kocisz
nr 10 6 Twitter Bootstrap szybkie tworzenie witryn HTML. Co nowego w wersji 3 / Łukasz Mazur 18 ASP.NET SignalR czyli aplikacje czasu bardzo rzeczywistego / Karol Rogowski 28 Certyfikaty użytkownika SSL jak to ugryźć? / Michał Leszczyński PROGRAMOWANIE GRAFIKI 32 Szybka grafika 2D: Shadery i tekstury / Bartosz Taudul PROGRAMOWANIE SYSTEMÓW OSADZONYCH 42 Arduino a sprawa wyświetlaczy / Marek Sawerwain TESTOWANIE I ZARZĄDZANIE JAKOŚCIĄ 52 Automatyczne testy akceptacyjne w procesie Continuous Delivery / Sławomir Andrzejewski 56 Zaawansowane programowanie na platformie Android. Część I: There is no app kluczowe koncepty stojące za filozofią platformy Android / Michał Charmas 60 Refaktoryzacja testów legacy w kierunku wykonywalnych specyfikacji. Część I: Podstawowy refaktoring testów / Rafał Jamróz PLANETA IT 68 Java nad Wisłą / Łukasz Sobótka 70 Budowanie wiedzy w zespole. Główne błędy i strategie / Michał Bartyzel, Mariusz Sieraczkiewicz 72 Programowanie. Teoria i praktyka z wykorzystaniem C++ / Rafał Kocisz 74 Domain-Driven Design: Tackling Complexity in the Heart of Software / Sławomir Sobótka
nr 11 6 Jak używać IBM Worklight / Andrzej Kowalczyk 10 Windows 8.1 okiem programisty / Marcin Kruszyński 24 Calabash automatyzacja wykonywania testów funkcjonalnych dla aplikacji mobilnych na przykładzie ios / Łukasz Mazur 36 Rozpoznawanie i syntetyzacja mowy w Windows 8.1 / Dawid Borycki 42 Rozpocznij przygodę z Javą na z/os / Dawid Morawiec 50 F# nieco inne programowanie w.net / Marek Sawerwain PROGRAMOWANIE URZĄDZEŃ MOBILNYCH 58 Rzeczywistość rozszerzona w Androidzie / Paweł Wolniewicz 66 5 głównych błędów, które popełniają programiści rozpoczynający tworzenie aplikacji mobilnych / Bogdan Polak 70 Corona SDK. Multiplatformowe programowanie na urządzenia mobilne. Cz. 2 / Grzegorz Gałęzowski PROGRAMOWANIE SYSTEMÓW OSADZONYCH 86 Robot reagujący na światło zrób to sam / Marek Klimowicz PROGRAMOWANIE SYSTEMOWE 94 Bliżej silikonu #2 / Gynvael Coldwind, Mateusz Jurczyk 106 Vaadin 7 naprawdę szybkie tworzenie aplikacji web w Javie / Bartek Kuczyński 116 Wzorce Programowania Gier: Szkielet Aplikacji / Rafał Kocisz 126 Zaawansowane programowanie na platformie Android Część II: Odwracanie kontroli na platformie Android / Michał Charmas STREFA CTF 132 Zdobyć flagę... hack.lu CTF 2013 Packed / Gynvael Coldwind PLANETA IT 136 Galaktyka JDD w Krakowie / Łukasz Sobótka 138 Mantra architektoniczna / Michał Bartyzel, Mariusz Sieraczkiewicz 141 Implementing Domain-Driven Design / Sławomir Sobótka 142 Programowanie w języku Clojure / Rafał Kocisz
nr 12 6 Vagrant i Ansible Budujemy wirtualne środowisko programistyczne / Mikołaj Kopras 10 Vaadin 7 naprawdę szybkie tworzenie aplikacji web w Javie. Część II / Bartek Kuczyński 18 Programowanie aplikacji webowych dla pakietu Microsoft Office 2013 / Dawid Borycki 26 Wprowadzenie do Node.js / Sebastian Rosik PROGRAMOWANIE GRAFIKI 34 Szybka grafika 2D: wydajne rysowanie / Bartosz Taudul TESTOWANIE I ZARZĄDZANIE JAKOŚCIĄ 48 Samouczek testów jednostkowych w Visual Studio 2013 / Jacek Matulewski 56 Receptury projektowe niezbędnik początkującego architekta. Część VII: Building Blocks dla Twojej lewej półkuli: połączenia podejścia obiektowego, proceduralnego, funkcyjnego w codziennej pracy z kodem / Sławomir Sobótka STREFA CTF 62 Zdobyć flagę...ghost in the Shellcode 2013 Oranges / Gynvael Coldwind PLANETA IT 66 100 lat na przyjaźń z IT / Łukasz Sobótka 68 Jak całkowicie odmienić sposób programowania, używając refaktoryzacji (część 5). Kod, który czyta się jak książkę techniki, które całkowicie odmienią twoje życie programisty / Mariusz Sieraczkiewicz 72 "Mistrz czystego kodu" oraz "Czysty Kod" / Rafał Kocisz Oprac. BPK