Agenda 2011
Agenda is subject to change. Please check back for updates.
Thursday, March 10th 2011
Friday, March 11th 2011
Saturday, March 12th 2011
Abstracts
Podpis elektroniczny - czy jesteśmy gotowi do innowacyjnego myślenia i działania
Celem wykładu jest zaprezentowanie alternatywnego sposobu myślenia o podpisie elektronicznym, a także alternatywnego rozwiązania, które dostosowuje podpis elektroniczny do realnych potrzeb usług elektronicznych. Przedstawię historię tworzenia sposobu dojścia do tego rozwiązania z wykorzystaniem mechanizmów współpracy nauki z przemysłem. To studium przypadku to tylko pretekst do szerszego spojrzenia na miejsce innowacyjnego myślenia w tworzeniu rozwiązań informatycznych. Chcę pokazać, że jeśli chcemy się liczyć na rynku informatycznym (rynku światowym, bo informatyka jest tylko globalna), to mamy jako polscy informatycy swoją szansę tylko stosując innowacyjne myślenie. Nie zagwarantuję, że rozwiązanie o którym powiem odniesie sukces , ale będę chciał przekonać słuchaczy do zmiany sposobu myślenia w rozważaniach o zastosowaniu technik teleinformatycznych i tworzeniu systemów informacyjnych.
Odkrywamy możliwości tworzenia procesów – Windows Workflow Foundation
Microsoft Windows Workflow Foundation (WF) pozwala użytkownikom utworzyć systemowe bądź ludzkie przepływy pracy (workflows) i zaprezentować je jako czytelny diagram. Wykorzystywany może być jako:
- przepływ pracy wewnątrz aplikacji biznesowych,
- przepływ stron interfejsu użytkownika,
- integracja pomiędzy systemami zorientowanych usługowo.
W trakcie prezentacji zobaczymy jak zrobić proces, uruchomić go w aplikacji oraz jako usługa web, debugować oraz uruchomić projektant procesów wewnątrz własnej aplikacji. Dowiemy się zarówno podstaw WF jak i możliwości jego rozszerzeń.
Zapraszam na prezentację, gdyż proces jest najważniejszym elementem wielu systemów a WF może nam pomóc te procesy zaimplementować.
Facebook dla developerów
Facebook to nie tylko największy portal społecznościowy na świecie. To zupełnie nowe podejście do informacji i komunikacji. Facebook pozwala na łatwy dostęp do informacji w nim zawartych oraz zapis nowych. Dzięki wykorzystaniu jego API można nie tylko analizować profile poszczególnych użytkowników ale również skutecznie zachęcać ich do podejmowania określonych działań. Osiąga się to dzięki aplikacjom, które są odpowiednio przygotowanymi stronami www, które rozpoznają czy przegląda ich osoba aktualnie zalogowana do FB. Jeżeli tak jest możemy za jej zgoda uzyskać dostęp do praktycznie każdej informacji umieszczonej w jej profilu – od imienia i nazwiska po status jej związku. Kolejnym szalenie istotnym działaniem Facebooka jest indeksowanie stron internetowych, którego celem jest stworzenie wyszukiwarki mogącej konkurować z Google. O tym jak dobrze wypaść przy wizycie robotów Facebook oraz jak podnosić swoją pozycję w wyszukiwarce dowiecie się na wykładzie.
Załóż firmę i zadbaj o jej rozwój!
Dlaczego warto współpracować z Krakowskim Parkiem Technologicznym? Czym będzie Małopolski Park Technologii Informacyjnych? O działalności KPT i MPTI - nowej inwestycji Krakowskiego Parku Technologicznego opowie prezes KPT, dr Sławomir Kopeć.
Podczas wykładu, będzie można dowiedzieć się jak pozyskać kapitał na inwestycje, jak sfinansować własne pomysły czy doinwestować firmę. Wszelkich informacji udzieli prezes Funduszu Zalążkowego KPT, Marcin Bielówka.
Zaprosiliśmy także Michała Kluzowicza z firmy Mijuma, który odniósł sukces dzięki pomocy i współpracy z KPT. Michał chętnie opowie o swoich doświadczeniach związanych z działalnością w Inkubatorze Technologicznym KPT.
KPT pomaga firmom na każdym etapie rozwoju, przyjdź i dowiedz się więcej!
Zapraszamy!
Mobility 2020
Telefonia komórkowa, stworzona kilkadziesiąt lat temu w celu umożliwienia porozumiewania się osobom będącym w ruchu, staje się dominującą formą komunikacji. Jednocześnie jest coraz rzadziej stosowana jako technologia komunikacji głosowej między ludźmi. Głos zastepowany jest strumieniem danych, a po jednej stronie połączenia zamiast człowieka coraz częsciej pojawia się maszyna. Przepustowość połączeń mobilnych zaczyna dorówwnywać połączeniom stacjonarnym. Wydajność obliczeniowa telefonów zaczyna wyprzedzać wydajność komputerów osobistych. Wraz z rozwojem nowych, bezdotykowych interfejsów człowiek - maszyna, ludzie będący w ruchu zaczynają być częścią wielkiego, super inteligentnego organizmu, złożonego z mózgów biologicznych i mózgów elektronicznych. Zjawisko to w pozornie niezauważalny sposób zaczyna dominować w naszym życiu.
W roku 2020 telefony komórkowe, jakimi znamy je dzisiaj, zanikną. W ich miejsce pojawią się urządzenia łączące bezpośrednio nasze mózgi ze zmysłami innych osób lub z maszynami. Maszyny będą w pełni świadome naszego kontekstu, odbierając ciągły strumień zdarzeń z naszych zmysłów i dostarczając w zamian ciągły strumień powiązanej kontekstowo informacji - podpowiedzi, tłumaczenia... W czasie sesji przedstawione zostaną modele konceptualne telefonów przyszłości oraz różnego rodzaju usług, z których będziemy korzystać.
Future of programming
Zdalna prelekcja twórcy Mathematica i Wolfram|Alpha, podczas której poznamy jego wizję przyszłości programowania.
Szybkie i przyjemne tworzenie aplikacji webowych - ASP.NET MVC3 + EF4 CTP5
During this talk a working web application will be created using the newest technological stack from Microsoft. ASP.NET MVC3, EF4 CTP5, SQL CE 4.0, NuGet 1.1, MvcScaffold... These abbrevations should be fully understood after the lecture. Authors, who use these technologies for solving everyday challenges, will try to convince the audience that working with .NET can be a very pleasant experience for a developer.
Scala in the Enterprise (and what's going on with Java...)
Prezentacja przedstawiająca wieloparadygmatowy język Scala działający między innymi na platformie JVM. Autor odniesie się do bieżącego miejsca i perspektyw zastosowania języka w systemach klasy enterprise, w szczególności w kontekście potencjalnego wzrostu efektywności procesu produkcji oprogramowania. Oprócz zagadnień czysto technicznych zostaną wskazane również główne bariery utrudniające potencjalną adaptację języka. Poruszony zostanie także temat obecnych trendów w świecie Javy korporacyjnej.
Git. Tak. Po prostu.
W epoce kamienia łupanego był CVS, zastąpił go SVN i… nastąpił dziwny letarg motywowany zdaniami w stylu „tylko to znam, tylko tego używam”, „przecież wystarcza”. Wielu developerów uważa jednak inaczej - zwłaszcza gdy ciągle walczymy o czysty kod, a trafia on w chaotyczne repozytorium w którym później trudno się poruszać między rewizjami. Git, jak i wszystkie zdecentralizowane systemy kontroli wersji, rozwiązuje i porządkuje wiele problemów z którymi developerzy pracujący SVN muszą się na codzień borykać. Dlaczego w SVN branchowanie to taki problem? Czy korzystasz z SVN i nigdy nie stworzyłeś brancha lub taga? Git pozwala na proste branchowanie, tagowanie, skanowanie rewizji oraz generalnie posiadanie „czystej historii” projektu, nie wspominając o zaletach w stylu szybkość, bezpieczeństwo, nie zawodność oraz decentralizacja repozytorium. Podczas tej prezentacji nauczymy się jak korzystać z git w typowych zastosowaniach developerskich - będziemy tworzyli feature-branch'e, mergowali je z łatwością, pomożemy koledze w pracy nad jego feature, poprzeskakujemy między różnymi niezwiązanymi i nie zakończonymi zadaniami i wiele więcej. Przyglądniemy się też chwilkę wnętrznościom git aby zrozumieć jak to wszystko w ogóle jest możliwe. A dla jeszcze nie całkiem przekonanych - pokażemy jak korzystać z git nawet gdy główne firmowe repozytorium nadal jest svn'em. Będzie git. Tak, po prostu.
Inżynieria wsteczna rozwiązań sprzętowo programowych
Wykład dotyczyć będzie analizy oprogramowania wykorzystującego klucze sprzętowe. Będzie składać się z trzech części. Pierwsza to ogóle wprowadzenie, czym jest Re. Druga będzie przedstawiać bardziej szczegółowy podział kluczy sprzętowych, sposoby komunikacji aplikacja-klucz, metody praktycznego podejścia do analizy aplikacji używających kluczy. Trzecia cześć prezentować będzie praktyczny przykład w jaki sposób można samemu zbudować kopię klucza bez fizycznego dostępu do niego, dysponując minimalnym zapleczem sprzętowym i niskim budżetem.
Narzędzia Hakerów
Dzisiejszy świat dąży do maksymalnej automatyzacji mojego życia. Żyję w czasach nasycenia "inteligentną" technologią, dzięki której na ulicy mogę kupić "zawsze świeże" frytki z automatu, a mój samochód nie pozwoli mi ruszyć bez zapiętych pasów. Podobna rewolucja odbywa się w branży bezpieczeństwa komputerowego. W sieci pojawiają się "programy do hackowania" (takie z miejscem na wpisanie adresu IP ofiary i wielkim czerwonym przyciskiem "HAKUJ"), które nawet niewprawionym w fachu informatykom pozwalają na łatwe przeprowadzenie włamania i szybki zysk. Niegdyś niezastąpione, jednolinijkowe skrypty powoli ustępują kombajnom i zautomatyzowanym frameworkom testującym bezpieczeństwo... Jak myślicie, z czego korzystają współcześni hackerzy?
Prelekcja oparta będzie na praktycznym pokazie, prezentującym w akcji kilka narzędzi, które z przeciętnego Kowalskiego w kwadrans zrobią cyberprzestępcę -- ale przecież ich głównym celem jest wsparcie legalnych testów penetracyjnych, prawda?
HTML5: new markup for a brave new world
HTML5 has arrived! The W3C published a new editor's draft at the start of 2011, and many of the new features detailed within have widespread support across all the latest major browsers. But what does it mean to you, the web developer on the street? Should you embrace it right now, and start using it to implement your own futuristic unicorns and rainbows? In this talk Chris Mills from the Opera web browser looks at some HTML5 history, how it improves upon HTML<5, the basics of some of the major new features, such as new structural elements, new form controls, and , and how to produce an HTML5 site that will also function on older browsers.
Rozwój technik obchodzenia zabezpieczeń - od spoofingu do drive-by download i covert channel
Wraz z rozwojem technik ataków na systemy informatyczne rozwijane są techniki wykonywania ataków w taki sposób, aby istniejące zabezpieczenia nie były w stanie zauważyć ataków. Mówimy wtedy o obchodzeniu, omijaniu lub przełamywaniu zabezpieczeń. W literaturze anglojęzycznej noszą one ogólną nazwę evasion. Już w latach 90-tych znane były techniki source routing, source porting, czy spoofing, które skutecznie omijały stosowane w tamtym czasie filtry pakietów. Szczególnie dynamiczny rozwój technik evasion nastąpił w ostatnich latach wraz z rozwojem handlu, a szczególnie bankowości internetowej. Zmotywowali finansowo przestępcy mogą zainwestować i zatrudnić do tego celu wysokiej klasy specjalistów. Oszustwa w bankach i sklepach internetowych zapewniają bowiem przestępcom odpowiednio duże zyski. Aktualnie techniki obchodzenia zabezpieczeń koncentrują się na skutecznym atakowaniu systemów z interfejsem Web (m.in. enkodowanie, obfuscation) oraz włamaniach do komputerów osobistych (m.in. drive-by download, covert channel, pivoting), gdzie z punktu widzenia przestępców przetwarzane są najcenniejsze informacje (np. dane dostępowe do kont bankowych, numery kart kredytowych, dane prywatne użytkowników, poufne dokumenty firmowe). Wykład omawia różne techniki obchodzenia zabezpieczeń oraz praktyczne aspekty ich wykorzystania na przykładach scenariuszy symulacji włamań stosowanych w audytach bezpieczeństwa, a także możliwości im przeciwdziałania za pomocą różnych rodzajów zabezpieczeń.
Domeny w sieci, czyli co łączy blogi w internecie. Topologiczna analiza polskiej blogosfery
Wystąpienie jest poświęcone analizie sieci linków łączących strony internetowe. Przedstawione zostaną największe badania ogólnoświatowe i ich porównanie do badań zrealizowanych w Polsce. W wystąpieniu będzie omówiona metodologia analizy topologicznej, budowa crawlerów internetowych i baz danych użytecznych do tego rodzaju badań. Druga część wystąpienia będzie poświęcona analizie sieci linków: odtwarzaniu najważniejszych właściwości makrostrukturalnych, wskazywaniu najbardziej istotnych domen i analizie skupień. Wystąpienie będzie ilustrowane danymi z polskiej blogosfery i mapą polskiego internetu.
Tworzenie animacji wirtualnych postaci w grach komputerowych
Tworzenie postaci wirtualnej do gier komputerowych. Techniki tworzenia siatki postaci, systemów szkieletów, rigów i skinów postaci zależne od silników graficznych oraz technik animacyjnych. Etapy przygotowywania postaci i jej animacji do gry od strony developerskiej, ograniczenia napotykane podczas przenoszenia danych pomiędzy programami graficznymi, animacyjnymi oraz silnikami graficznymi. Przykład przygotowania postaci i animacji postaci do gry dla silnika Unreal 3.0.
Budowa i testowanie aplikacji flexowych w środowisku developerskim platformy JetBrains
Ogólnie porozmawiamy o sposobie optymalizacji pracy zespołu developerskiego poprzez zautomatyzowanie procesu produkcji ( kompilacja i wdrożenie ) oraz usprawnienia testowania i utrzymania aplikacji ( TDD i integracja bugtracker'a w środowisku developerskim ). Jako przykład wykorzystamy IntelliJ IDEA ( ide ), TeamCity ( CI ) oraz YouTrack ( bugtracker ) ze stajni JetBrains. Poznacie jak sprawnie i wydajnie można opracować proces tworzenia aplikacji jak również pracę nad poprawą błedów, jakością kodu ( FlexPMD ) i zmianami w kodzie.
Nieortodoksyjne podejście do projektowania i skalowania baz danych
Baza danych jest jednym z fundamentów dzisiejszego ekosystemu aplikacji internetowych. Od przyjętego schematu bazy danych czy strategii obsługi zapytań zależy efektywne funkcjonowanie całego rozwiązania. I choć na studiach opanowuje się skomplikowane aspekty języka SQL, to w przypadku wielu większych aplikacji internetowych można o nich bardzo szybko zapomnieć. Równie często należy przewidywać ewolucję bazy danych na kilka kroków naprzód, pomyłki są tu zwykle bardzo kosztowne.
W trakcie prezentacji postaram się przybliżyć tematykę projektowania i skalowania baz danych wraz z rosnącym obciążeniem, a także przedstawić różne opcje i strategie postępowania. Uwagę zwrócimy również na alternatywę dla SQL czyli NoSQL, w szczególności na korzyści i problemy z nim związane.
Workshops
Tworzymy prosta aplikacje do garażowej wyprzedaży
W trakcie warsztatu uczestnicy utworzą oraz skonfigurują aplikację Facebook. Zapoznają się ze wszystkimi punktami integracji, metodami pobierania danych oraz metodami publikacji informacji do wnętrza Facebooka. Dodatkowo jeżeli starczy czasu przygotujemy przykładową stronę na wizytę robotów Facebook.
Wymagania
Aby nie stracić czasu na warsztacie powinno się przynieść:
- Podstawową wiedzę na temat PHP + JavaScript
- Urządzenie pozwalające swobodnie pisać oraz korzystające z wifi – prawdopodobnie laptop
- Ulubiony edytor tekstowy
- Facebook PHP SDK - https://github.com/facebook/php-sdk/
- Dostęp do serwera ftp na którym będzie się publikować aplikację bądź lokalny serwer
Programiści i testerzy - sprzymierzeńcy czy wrogowie, czyli jak znaleźć wspólny język
Programiści i testerzy - wrogowie czy sprzymierzeńcy? Mają wspólny cel -> dostarczyć klientowi wysokiej jakości, prawidłowo działającą aplikację ale... W wielu zespołach można odnieść wrażenie, że działają po dwóch stronach barykady. Dlaczego? Czy można im pomóc znaleźć wspólny język? Podczas warsztatów będziemy komponować pyszne (czy aby na pewno?;) ) ciasto zgodnie z wytycznymi klienta. Uczestnicy gry poznają "uroki" pracy osób z "przeciwnego obozu" a także spróbują znaleźć formy nowej, efektywniejszej komunikacji.
Prowadzenie projektu od kuchni
już niedługo dokładne informacje o warsztacie :)
"Cześć, jestem git." - Warsztat z nowoczesnego systemu kontroli wersji.
Podczas tego warsztatu zapoznamy się faktycznie "klepiąc" a nie tylko "patrząc jak to fajnie inni robią" z systemem kontroli wersji git.
Zaczniemy od podstaw, które również będą poruszane podczas prezentacji "git. tak. po prostu." jednak szybko przez nie przebrniemy i zdobędziemy w nich należytą płynność. Następnie przejdziemy do ciekawszych a zazwyczaj "nie serwowanych jako pierwsze danie" poleceń, takich jak rebase, bisect, daemon etc. Pokażemy dlaczego git nadaje się zarówno do ogromnych projektów, jak i do małych studenckich "hej Piotrek, musimy to skończyć na jutro!" :-) Poziom szkolenia dynamicznie dostosuje się zainteresowań oraz postępów grupy także bez obaw i serdecznie zapraszam wszystkich zainteresowanych - czy to starych wyjadaczy SVN czy osoby które jeszcze nie korzystają na codzień z żadnego narzędzia kontroli wersji (co powinny szybko zmienić :-)).
Wymagania
Uczestników proszę o przyniesienie notebooków z zainstalowanym gitem i ulubionym edytorem tekstu oraz chłonnych niczym gąbki umysłów :-)
Mały help na dobry początek:
- Użytkownicy Ubuntu Linux mogą zainstalować git w ten sposób:
sudo apt-get install git-core gitk kdiff3 gitweb git-gui git-daemon-run git-svn git-doc kdiff3
- Użytkownicy Fedora Linux mogą zrobić to samo przez:
su -c 'yum install git* kdiff3'
- A użytkownicy Microsoft Windows powinni przeklikać się przez instalator MSysGit (interesuje nas instalator FULL 1.7.4) oraz KDiff3.
- Posiadacze jabłuszek mogą skorzystać z git-osx-installer lub homebrew, jest to opisane tutaj, nie zaszkodzi również mieć KDiff3 z powyższego linka.
Podstawy level designu na przykładzie edytora Radiant
Warsztat będzie polegać na zaznajomieniu się z podstawami konstrukcji grywanego środowiska do gry komputerowej Open Arena. Program warsztatu to prezentacja oraz kurs podstaw obsługi programu do edycji map do wyżej wymienionej gry, połączone z zajęciami praktycznymi, gdzie uczestnicy będą mogli stworzyć własne mapy. Prezentacja obejmuje przedstawienie oraz opis programu do edycji i jego głównych elementów, ogólne wprowadzenie do teorii tworzenia map do gier, oraz proces uruchomienia mapy stworzonej przez użytkownika.
Dodatkowo w trakcie warsztatów zostanie poruszony temat metod współczesnego level design na podstawie środowiska Unreal Development Kit.
Wymagania
Uczestnicy powinni posiadać zainstalowane oprogramowanie:
- grę Open Arena (http://openarena.ws/download.php?list.29)
- środowisko UDK (http://download.udk.com/UDKInstall-2011-02-BETA.exe)
Ponadto uczestnicy muszą mieć pobrane pliki (w trakcie kursu zostanie pokazane jak zainstalować i uruchomić program):
- edytor map Radiant (http://www.icculus.org/netradiant/files/netradiant-1.5.0-20110121-win32-7z.exe)
- Pakiet startowy Open Arena dla edytora (http://files.poulsander.com/~poul19/public_files/OpenArenaPack.zip)
Odnajdź się z Androidem
Celem warsztatów jest przybliżenie uczestnikom zarówno architektury systemu Android, metodyki i podstawowych narzędzi programowania aplikacji dla Androida, jak również omówienie sposobów, w jakie smartphony ustalają swoje położenie oraz wspólne napisanie przykładowej aplikacji odnajdującej bieżące współrzędne geograficzne.
Wymagania
- Laptop z Android SDK oraz Eclipsem z wtyczką ADT
- Połączenie sieciowe (w wypadku emulatora) lub urządzenie z Androidem
- Kabel USB i zainstalowany sterownik USB dla Android (w przypadku urządzenia)
- Średniozaawansowana+ znajomość Javy.
PHP przyśpieszone memcached
LAMP to skrót, którego nie trzeba przedstawiać żadnemu programiście. Linux, Apache, MySQL i PHP, cóż więcej potrzeba aby napisać i uruchomić aplikację internetową? Jednak przy rosnącej popularności naszej witryny zwykle potrzeba większej wydajności i okazuje się, że akronim należy rozszerzyć o kolejną literkę, najczęściej jest to M jak Memcached. Na przestrzeni kilku lat Memcached stał się synonimem wydajnych systemów cache'ujących, powstało dziesiątki klientów dla najróżniejszych języków programowania, a kolejne rozwiązania bazowały na jego protokole lub założeniach. I choć interfejs komunikacyjny Memcached jest bardzo prosty, to jego wdrożenie może już takie łatwe nie być. Aby maksymalnie wykorzystać możliwości tego cache, często potrzeba wprowadzać zmiany w architekturze całej aplikacji. W trakcie warsztatu na kolejnych przykładach prześledzimy typowe strategie wykorzystania Memcached, z omówieniem ich zalet i wad. Podyskutujemy także o bardziej zaawansowanych aspektach, takich jak dog-pile effect, multi-get hole, hot-keys czy alokacja slab. Zapraszam!
Golden Sponsors
Silver Sponsors
Honorary Patronage
Rector of University of Science and Technology - prof. dr hab. inż. Antoni Tajduś
Rector of Cracow University of Technology - prof. dr hab. inż. Kazimierz Furtak
Rector of Cracow University of Economics - prof. dr hab. Roman Niestrój
Rector of Jagiellonian University - prof. dr hab. Karol Musioł
Jerzy Miller - Voivode of Małopolska
Marek Sowa - Marshal of Małopolska
Jacek Majchrowski - Mayor of the City of Cracow
Media Patronage




















