Pokazywanie postów oznaczonych etykietą konkurs. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą konkurs. Pokaż wszystkie posty

poniedziałek, 18 maja 2009

Imagine Cup 2009 – relacja uczestnika

W tym roku po raz pierwszy zdecydowałem się wziąć udział w konkursie ImagineCup 2009 w kategorii "Projektowanie oprogramowania". Konkurs w Polsce dobiegł końca, nagrody rozdane, zwycięzcy wybrani, w związku z tym czas na małe podsumowanie całej imprezy.

Mówiąc w skrócie, konkurs polega na stworzeniu ciekawej aplikacji która oprócz swojej innowacyjności ma uratować świat - przynajmniej takie jest założenie :). Uczestnicy mieli za zadanie zmierzyć się z celami ustalonymi przez ONZ, a było to 8 celów milenijnych (Milenijne Cele Rozwoju), a hasło przewodnie konkursu brzmiało "Wyobraź sobie świat, w którym technologia pomaga rozwiązać najtrudniejsze problemy ludzkości".

Nie chciałbym opisywać idei imprezy ponieważ więcej i lepiej możemy znaleźć w Internecie, dlatego po więcej szczegółów odsyłam na strony: imaginecup.pl, imaginecup.com, Interia, WSS, IWP, IWP2 , a sam skupie się na własnej relacji :]

Zmagania drużyny RHEA

Jak się zapewne domyślanie, drużyna do której mam zaszczyt należeć nazywa się RHEA i reprezentuje Politechnikę Białostocką. W skład drużyny wchodzą:

Agata Grzybek, Joanna Wacław, Arkadiusz Kondratiuk oraz ja – Jacek Ciereszko.

Naszym mentorem był Marcin Bartoszuk, a super grafikiem Krystian Karpiuk.

Nasza przygoda z imagine cup rozpoczęła się w listopadzie gdzie przypadkowy pomysł przeniesienia siatek centylowych do sprawdzania stanu rozwoju dziecka do świata elektronicznego, stał się czymś więcej niż tylko pomysłem i zwykłym projektem na uczelni. Do początku grudnia skompletowaliśmy drużynę, mentora oraz grafika i maszyna ruszyła!

Na początku, gdy terminy były jeszcze bardzo daleko, robota szła bardzo powoli, a leniwe święta wcale nam nie pomagały. Na szczęście pierwszy termin oddania zarysu pomysły na tworzoną aplikację mijał 19 stycznia, co zmusiło nas już do mobilizacji. W tym momencie mieliśmy także zrobiony klikalny prototyp aplikacji desktopowej z ustaloną zawartością ekranów oraz ich kolejnością.

Po 19 stycznia

Mimo wykorzystywania oszacowań na podstawie liczby i stopnia skomplikowalności przypadków użycia (tak tak, robiliśmy doce!) mieliśmy już bardzo mało czasu, a przerwa wymuszona przez sesje na studiach przerwała nam prace na kolejne 2 tygodnie.

Po sesji i feriach, wreszcie udało się zorganizować repozytorium kodu w postaci TFS, zakończyć wszystkie wymagane PoC (Proof Of Concept) i rozpocząć implementowanie! W sumie kodowanie według ustalonego harmonogramu oraz sporządzonych ekranów rozpoczęliśmy od początku marca. Prace developerski staraliśmy się prowadzić według założeń SCRUMa, organizując co dzienne spotkania (scrum meeting) późno wieczorem, które raczej kończyły się wymianą emaila, niż rozmową, jednak mimo to bardzo dobrze się sprawdzały.

Marzec osobiście wspominam jako wyjęty z życia, wszyscy wyrabialiśmy drugi etat (niektórzy po pracy). Ja osobiście zerwałem wszystkie nocki od początku marca aż do 8 kwietnia, z wyjątkiem 13.05 kiedy miałem imprezę ;) .

To czym mogę pochwalić się w przy okazji developmentu, to że mieliśmy przygotowaną dobrą architekturę w postaci prostego rozwarstwienia oraz użytego patternu MVVM. Napisałem dobrą, ponieważ ten zestaw doskonale się sprawdził do naszych potrzeb. Szybka rzeźba w kodzie utrudniała by nam pracę w późniejszych etapach, a z drugiej strony rzucenie się na np. PRISM było by czymś na wyrost.

Warstwę dostępu do danych załatwiliśmy prawie w 100% poprzez LINQtoSQL, a prezentacji przy użyciu MVVM. To co mogę powiedzieć na temat tego ostatniego, to jedno wielkie POLECAM! Pomimo dodatkowego narzutu pracy, zyski w postaci separacji "logiki widoku" od samego widoku są niesamowite. Ułatwiły stworzenie testów, wprowadzanie zmian w kodzie oraz reużywalność niektórych elementów, po prostu cudo! :)

Tak stworzona architektura oraz wcześniej zaplanowane ekrany, usystematyzowały naszą pracę i pozwoliły szacować potrzebny czas. Ten model pracy okazał się skuteczny i godny polecenia.

Działającą aplikację wraz ze screencastem oddaliśmy 8 kwietnia, czyli w dzień deadline-u. Sam screencast nagrywaliśmy 2 dni, a ostatnie zmiany w aplikacji były robione jeszcze rano ;)

Ponieważ 28 kwietnia było dopiero ogłoszenie listy finalistów, wszyscy zrobiliśmy sobie przerwę. Dziewczyny z drużyny spędziły je na nadgonieniu zaległych projektów, a ja wyczekiwałem wyników.

Po 28 kwietnia

Rezultat był niespodziewany, ponieważ dostaliśmy się do pierwszej dziesiątki!! Maszyna znowu ruszyła. Odgrzebaliśmy kod w którym na szczęście oprócz kliku drobiazgów nie musieliśmy za dużo zmieniać. Kod trafił na nasz wewnętrzny UAT oraz testy HCI. W miedzy czasie przygotowywaliśmy się do sesji plakatowej i ewentualnej prezentacji. Swoją drogą jest to duży minus całego konkursu że wszyscy przygotowują prezentację ale tylko połowa ma później szanse ją wygłosić. Trochę to nie w porządku że ludzie uczą się czegoś na marne.

12 maj - półfinały

To już dziś, dzień sesji plakatowej. Specjalnie na tą okazję udało nam się wypożyczyć od firmy Hewlett-Packard specjalny komputer HP TouchSmart IQ500 z ekranem dotykowym za co bardzo dziękujemy!!

Spakowaliśmy cały sprzęt i przybyliśmy na finały. Sędziowie chodzili po stoiskach od 14:00, dlatego też wszyscy zjawili się około 12:00 żeby się przygotować. Nasze stoisko oprócz zgromadzonego sprzętu oraz kilku rekwizytów nie miało żadnych rzutników, plakatów i innych urządzeń ale mimo to chyba nie wyglądało źle :)

Sędziowie chodzili w grupach po 2 i 3 osoby i dla każdej drużyny mieli max 30 minut na zapoznanie się z systemem. W tym czasie każda z drużyn bombardowała ich przemówieniami, pokazami, ulotkami, a nawet słodyczami :P

My osobiście wszystkich sędziów wspominamy bardzo dobrze, żaden nie powiedział nam żeby coś mu się nie spodobało, panowała pełna kultura i w żaden sposób nie przypomniało to telewizyjnych programów "IDOL" czy też "Mam Talent".

Całość zakończyła się lekko po 19:00, kiedy to spakowaliśmy nasze rzeczy i udaliśmy się czym prędzej do domu w celu przygotowań do ewentualnej prezentacji. Tu kluczowy okazał się TIGER który po całym dniu wrażeń i stresu postawił nas na nogi.

13 maj –finały imagine cup 2009

Ten dzień zapamiętałem jako wyjątkowo nerwowy. Rano szybko powtórzyliśmy prezentację i udaliśmy się na ogłoszenie wyników. Na miejscu było już dużo ludzi więc po cichu usiedliśmy sobie gdzieś z brzegu i czekaliśmy na wyniki.

Po krótkim wstępie wyczytano 5 finałowych drużyn: Demoscene Spirit, FTeamS, kAMUflage, NosoiFighters oraz naszą RHEA.

Radość była ogromna. Nie wiedzieliśmy czego się spodziewać, więc wynik był bardzo miłą niespodzianką.

Po chwili niepewności związanej z kolejnością prezentacji, udaliśmy się na dalsze przygotowania. Jak się okazało, mamy numer 4 i będziemy mieli swój pokaz od razu po przerwie kawowej. Pozostały czas przeznaczyliśmy na kolejne przygotowania.

Wybiła 12:45, czyli czas występu. Oczywiście jak na złość Internet nie działał, ale mieliśmy plan B na takie okoliczności w postaci komórki :] Kiedy wszyscy goście wrócili z przerwy, rozpoczęliśmy. Pomimo tremy i małej wpadki w tekście, prezentacja przebiegła raczej pomyślnie (czekamy na nagranie z IPW). Po prezentacji było forum przedsiębiorczości, a myśmy udali się na mały obiadek.

Wyniki! Wyniki były ogłaszane powoli, co dodatkowo zwiększyło stres. No i stało się, zostaliśmy wyczytani jako drużyna która zajmie 4 miejsce razem z drużyną FTeams. Trzecie miejsce zajęła drużyna NosoiFighters, drugie Kamuflage, a pierwsze DemoScene. Jak to mówią "Winner Take All" i także tym razem tak było, jednak mimo to nie zabrało nam to radości z tego co udało nam się dokonać do tej pory. Dostarczone aplikację były na bardzo wysokim poziomie i mam nadzieję że DemoScene w tym roku sięgnie także pierwszego miejsca w Egipcie! Był by to bardzo miły akcent przed przyszłorocznymi światowymi finałami ImagineCup 2010 które mają odbyć się właśnie w Polsce.

Wieczorem Microsoft ugościł wszystkich miłą imprezką integracyjną na której to rzeczywiście poznałem mnóstwo ludzi oraz miałem okazję porozmawiać z tymi których widuje na co dzień na forach codeguru itp.

Podsumowanie

Podsumowując, cieszę się że wziąłem udział w tym konkursie. Może i nie zajęliśmy miejsca na podium ale tworząc nasz system, w bardzo krótkim czasie przerobiliśmy tyle technologii i nauczyliśmy się tak wiele, że zdobyta wiedza jest bezcenna, a korzyści z jej płynące będą długotrwałe. Sam bardzo chciałem zrobić coś większego w WPF, tutaj miałem doskonałą motywację i się udało. Oprócz tego, używaliśmy między innymi: Silverlight 3.0 Beta 1, PEX, MVVM, LINQtoSQL, MS SQL Server, TFS, Windows Mobile, WCF, Silverlight Virtual Earth Map Control, Mashup, czytniki linii papilarnych itd., wszystkie te i nie tylko technologie otrzymaliśmy w skondensowanej dawce w ciągu kilku miesięcy i mogę się założyć że gdyby nie ImagineCup, zapewne nie sięgnęlibyśmy po nie jeszcze długo (no może oprócz Silverlight 3 :P ).

Chciałem także tak na samym końcu pogratulować organizatorom ImaineCup 2009. To nie był mój pierwszy konkurs w którym brałem udział, ale na pewno był to konkurs najlepiej zorganizowany. Zarówna cała impreza jak i wsparcie było bardzo dobrze przemyślane. Organizatorzy, tu szczególnie należy wymienić Piotra Kramka, odpowiadali na każde zapytanie, bardzo często wieczorami i w weekendy, w godzinach w których powinni mieć wolne, oni czuwali aby każdy był poinformowany i każdy wiedział co się dzieje. Liczne spotkania, livemeeting-i oraz emaile usprawniły cały proces, za co należy się duże podziękowanie organizatorom!


Wybrane linki o ImagineCup

Pozdrawiam,

Jacek Ciereszko

niedziela, 15 marca 2009

[C2C 2009] Rozwiązanie konkursu kartkowego

Konferencja C2C 2009 dobiegła końca, zdobyliśmy trochę wiedzy i poznaliśmy nowych ludzi. Zostały miłe wspomnienia i odliczanie do C2C 2010. Zanim przejdę do rozwiązań konkursu "kartkowego", chciałbym podziękować jeszcze raz wszystkim uczestnikom za przybycie (ze wszystkich zarejestrowanych na ścieżkę .NET nie stawiły się mniej więcej tylko 2 osoby!), sponsorom za wsparcie i pozostałym organizatorom za poświęcenie swojego czasu dla stworzenia tak wspaniałego wydarzenia (szczególnie tym najbardziej zasłużonym – będą wiedzieć którzy to :) ).

Konkurs jak przypomnę składał się z 5 pytań i miał naturę "haczykowatą" oraz miał za zadanie być jak najtrudniejszy. Jak wyszło oraz czy zadania były fajne, okaże się w komentarzach :]

Zadanie 1

class A
{
protected int i = 2;
}

class B : A
{
private int i;

public B() {
i = 2009;
}
}

class C : B
{
public int GetNumber()
{
return i;
}
}
Wywołanie:
C c = new C();
int result = c.GetNumber();
Jaki będzie wynik wykonania programu:
1. Zmienna „result” będzie równa 2,
2. Zmienna „result” będzie równa 2009,
3. Zmienna „result” będzie równa 0,
4. Kod się nie skompiluje,
5. Wystąpi błąd w czasie działania aplikacji.

Prawidłowa odpowiedź to oczywiście 1.

Podczas inicjalizacji konstruktora w klasie B, "i" zmieni się tylko lokalnie, ponieważ jest private. W klasie C, zmienna "i" będzie pobrana z klasy A, gdzie wynosi 2.

Zadanie 2

       byte a = 10;
byte b = 01;
byte c = a + b;
Jaki będzie wynik wykonania programu:
1. Zmienna „c” będzie zawierać liczbę 1001,
2. Zmienna „c” będzie zawierać liczbę 11,
3. Zmienna „c” będzie zawierać liczbę 3,
4. Kod się nie skompiluje,
5. Wystąpi błąd w czasie działania aplikacji.

Prawidłowa odpowiedź to 4.

Kod się nie skompiluje, ponieważ domyślnym typem wartości z dodawania jest integer (int), a przypisanie byte c = integer; - bez rzutowania, rozpoznawane jest jako błąd (integer może nie zmieścić się w byte i mogą zostać utracone dane).

Zadanie 3

class A
{
public A(int number)
{
number = number;
}
public int number = 2;
}

class B : A
{
public B(int number)
{
number = new A(number).number;
}
}

class C : B
{
public C(int number)
: base(number)
{

}
}
Wywołanie:
C c = new C(2009);
int result = c.number;
Jaki będzie wynik wykonania programu:
1. Zmienna „result” będzie zawierać liczbę 2,
2. Zmienna „result” będzie zawierać liczbę 2009,
3. Zmienna „result” będzie zawierać liczbę 0,
4. Kod się nie skompiluje,
5. Wystąpi błąd w czasie działania aplikacji.

Prawidłowa odpowiedź to 4.

To zadanie polegało na wykryciu braku konstruktora bezparametrowego w klasie A. Jak zapewne każdy z nas wie, gdy w klasie istnieje jakikolwiek inny konstruktor, to kompilator nie generuje tego domyślnego bez parametru. W tym zadaniu w klasie B, poszukiwany jest domyślny bezparametrowy konstruktor z klasy A, który nie istnieje i kod w związku z tym się nie kompiluje.

Zadanie 4

Dana jest następująca tablica:
string[] imiona = { "Adam", "Ala", "Michał" };
Który fragment kodu poprawnie wyświetli imiona na konsoli?
1. foreach (var imie in imiona.Where(imie => imie.IndexOfAny(new char[] { 'a' }) > 0)) {
Console.WriteLine(imie ?? String.Empty.ToString()); }
2. foreach (int imie in imiona.SingleOrDefault(imiona => imiona.Length)) {Console.WriteLine(imiona[i]);}
3. Array.ForEach((from imie in imiona select imie.ToString()), imie => Console.WriteLine(imie));
4. foreach (string imie in imiona) { Console.WriteLine(imiona[imie.IndexOf(0)]); }
5. foreach (string imie in imiona) { Console.WriteLine(imiona); }

Prawidłowa odpowiedź to 1.

Trochę LINQu pomieszane z czym się dało. Szacunek dla tych którzy potrafili przeanalizować ten kod. :]

Zadanie 5

class Parent
{
static Parent()
{
_message = "Hello!";
}

static public string Message
{
get { return _message; }
}

static protected string _message;
}

class Child : Parent
{
static Child()
{
_message = "Hello, World!";
}
}
Wywołanie:
Console.WriteLine(Child.Message);
new Child();
Console.WriteLine(Child.Message);
Jaki będzie wynik wykonania programu:
1. Na konsole zostaną wypisane znaki: "Hello!", "Hello!",
2. Na konsole zostaną wypisane znaki: "Hello!", "Hello, World!",
3. Na konsole zostaną wypisane znaki: "Hello, World!", "Hello, World!",
4. Na konsole zostaną wypisane znaki: "Hello, World!", "Hello!",
5. Kod się nie skompiluje.

Prawidłowa odpowiedź to 2.

Ostatnie zadanie i chyba najtrudniejsze ze wszystkich, wymagało bardzo dobrej znajomości kompilatora C#. Niektórzy nazywają to zachowanie Bugiem kompilatora. Wartość _message nie zostanie ustawiona dopóki nie było pierwszego odwołania do konstruktora Child. Pierwsze odwołanie new Child() ustawia nową wartość zmiennej _message. Stąd też najpierw tekst "Hello!" a później "Hello, World!".

Podsumowanie

Dziękuje wszystkim którzy wzięli udział w konkursie, mam nadzieje że podobał się Wam i gratuluje wygranych!


Pozdrawia,

Jacek Ciereszko

środa, 19 listopada 2008

TechEd EMEA 2008 (Barcelona) – relacja, zdjęcia, Speaker Idol itd.

Hola! Buenos noches.. no więc konferencja dobiegła końca, wiele się nauczyłem i zobaczyłem, a teraz czas na refleksje. W tym artykule opisze w miarę jak najkrócej konferencję, sesje oraz Speaker Idola. Nie będę oceniać sesji ani prelegentów, a skupie się tylko na tym, co zobaczyłem.

Udział w konferencji zawdzięczam firmie Microsoft i konkursowi "Win The Web", który wygrałem wraz z dwoma kolegami, w maju na poziomie Polski i Europy oraz mojej firmie Hewlett-Packard dzięki udzielonemu wsparciu.

Konferencja i sesje

Aby wybrać sesję, spędziłem ponad 3h na czytaniu prawie wszystkich opisów i przeglądaniu terminów. Do wyboru było 335 sesji, w tym jedna sesja generalna, 247 sesji tematycznych, 80 sesji interaktywnych oraz 151 "Hands On Labs". Wybór był niesamowity i chyba każdy znalazł coś dla siebie. Ja głównie skupiłem się na sesjach architektonicznych oraz Web-owych z szczególnym nastawieniem na Silverlighta. Miałem także szansę uczestniczyć w kilku sesjach poświęconych ASP.NET oraz Windows Mobile. Wszystkie sesje były prowadzone na bardzo wysokim poziomie przez najlepszych specjalistów z całego świata.


Sesje były podzielone według następujących grup: Architecture, Business Intelligence, Database Platform, Developer Managers, Developer Tools and Languages, Development Practices Dynamics, Keynote, Microsoft IT, Office and SharePoint, PDC Highlights, Security, SOA and Business Processes, Unified Communications, Web and User Experience, Windows and Frameworks, Windows Embedded, Windows Mobile.

Spośród tak dużego wyboru i tylu kategorii, zawsze można było wybrać tematy najbardziej odpowiednie, nie zdarzyło się abym poszedł na prezentacje z braku wyboru.

Prezentacje których nie mogliśmy zobaczyć, są nagrane i umieszczone (prawie) na stronie TechEd EMEA 2008.

Planowane umieszczenie spisu wszystkich sesji oraz opisanie tych, na których byłem, muszę zaniechać, ponieważ ich mnogość wydłużyła by ten artykuł do stanu nie do przeczytania :] W ramach rekompensaty, zamieszczam link do spisu sesji na TechEd EMEA 2008.

Organizacja

Konferencja była zorganizowana na bardzo wysokim poziomie, było bardzo dużo osób które się nami opiekowały i dbały o nasze bezpieczeństwo. Dbały też o to, abyśmy głodni nie chodzili, choć tutaj należy wspomnieć o obiadkach które zwykle były podane jako torebki z jedzonkiem, a więc nic na ciepło. Rozwiązanie to ma swoje plusy i minusy, z jednej strony możemy się przemieszczać z jedzeniem po stoiskach i zjeść resztę obiadu później, a z drugiej strony nie jemy nic na ciepło.

W przerwach były podawane oczywiście zakąski, kawka, owoce itd., a wieczorem zdarzało się piwko.


Konferencja była podzielona na sale prezentacyjne, sale do "Hands On Labs" oraz exhibition hall, gdzie znajdowały się wszystkie stoiska firm, stoiska specjalistów z MS oraz scena Speaker Idol. Była także duża sala na największe prezentacje, gdzie odbywał się key note, na którym było ponad 3000 osób, sala ta była przeogromna!


Na większości powierzchni konferencji był także stały dostęp do Internetu poprzez WiFi oraz ustawione stanowiska komputerowe.



Do przyjemniejszych rzeczy należały stanowiska z XBOXami, gdzie non stop ktoś grał w gry. W budkach wystawiających się firm zbieraliśmy liczne upominki i braliśmy udział w konkursach. Nagrody była cenne i jako przykład podam, że kolega z którym przyjechałem, zgarną w jednym z takich konkursów nowiutkiego XBOXa!!! Ja dostałem mniej cenne nagrody (jak widać na zdjęciu) ale za to mam ich bardzo dużo.



W stoiskach "Ask the Expert" spotkałem także byłego prelegenta z C2C 2008 - Martina Kulova z którym miałem okazje zamienić dwa słowa i podziękować za C2C 2008.

Speaker Idol

Dla tych którzy jeszcze nie słyszeli o konkursie Speaker Idol, przypomnę że jest to bardziej zabawa niż rywalizacja, polegająca na wybraniu osoby która w najlepszy sposób poprowadzi prezentację. Nagrodą zwykle jest szansa na poprowadzenie całej 1.5h prezentacji na następnej edycji konferencji i tak też było na TechEd EMEA 2008.

Mój Speaker Idol odbył się właśnie w czasie konferencji Tech-Ed EMEA 2008 w Barcelonie, a napisałem mój, ponieważ przeszedłem wstępne eliminację (wybranie 30 najlepszych zgłoszeń) oraz "późne" eliminacje z których to dostałem się do finałowej grupy 9 osób, które miały swoje 5 minut przed publicznością oraz jury.


Nagrodami w tegorocznym Speaker Idol na TechEd EMEA 2008 była w/w szansa na poprowadzenie prezentacji w przyszłym roku na TechEd EMEA 2009 w Berlinie!!! Za drugie i trzecie miejsce uczestnicy otrzymali wstęp na TechEd EMEA 2009. Tu warto wspomnieć, że bilet na TechEd EMEA 2008 w Barcelonie kosztował prawie 2500 EURO, a więc nagrody były na prawdę cenne!!!

W jury zasiadły największe gwiazdy i osobistości. Należą do nich przede wszystkim Jose Luis Latorre Millas z INETA, Oliver Sturm, Kate Gregory oraz inni najlepsi prelegenci, którzy prowadzą prezentacje na co dzień.

Na TechEd konkurs trwał 4 dni, w pierwsze 3 trwały eliminacje i w 4 dzień były finały. Każdy z uczestników/uczestniczek miał/ła swoje max 5 minut na przeprowadzenie prezentacji. Dodam tylko, że według powszechnie panujących zasad, przede wszystkim oceniany był prelegent, a to co prezentował było drugorzędną sprawą.

Tak jak wspomniałem, ja także miałem swoje 5 minut, które w całości poświęciłem prezentacji o Silverlightcie :D Na przygotowania poświęciłem około tygodnia, podobnie na eliminacje wstępne, choć najtrudniejszy do przezwyciężenia był strach przed wyjściem w tak "zacnym" miejscu i przed tak dużą liczbą ludzi oraz jury.

Występowałem jako trzeci i konkurowałem z Guiseppe Maggiore z Włoch oraz Kurt Claeys, MVP z Belgii. Konkurs oczywiście przegrałem, jak jury słusznie powiedziało, zabrakło energii w wypowiedziach, trochę zbyt dużo łaziłem po mównicy i zbyt daleko od laptopa, przez co powroty przy zmianie slajdów wyglądały nieatrakcyjnie. Było jeszcze trochę uwag ale o dziwo nic poważnego, da się poprawić :P


To co mnie zdziwiło najbardziej po udziale w konkursie, to że wciąż się cieszę że wziąłem w nim udział. Spodziewałem się, że jak przegram to będę bardziej zawiedziony, w końcu włożyłem w przygotowania tyle pracy, a jednak było inaczej. Bardzo dużo się nauczyłem o prowadzeniu prezentacji, oglądałem innych uczestników oraz słuchałem to co mówi jury i zdobyta wiedza na pewno przyda mi się w przyszłości. Biorąc udział w konkursie, nie spodziewałem się, że uwagi jury będą aż tak szczegółowe, że będą oni zwracać uwagę np. na trzymanie ręki w kieszeni albo zerknięcie na slajdy (te uwagi akurat wyłapałem dzięki innym uczestnikom :P ).


Najważniejsze jest to, że znowu miałem okazję aby zwalczyć strach przed przemawianiem. Przed wystąpieniem, przez około 1.5 dnia miałem "stukotanie" serca. Poranek przed samym konkursem było najgorszy, ledwie pamiętam na jakich sesjach byłem, w ogóle nie mogłem się skupić na prezentacjach. Serce uspokoiło się dopiero jak znalazłem się na miejscu, stanąłem za mównicą i spojrzałem na ludzi. Wtedy tylko zostało "spięcie", które widać bardzo ładnie na nagraniu :]

Video z prezentacji (niesynchronizowane z powyższym filmem)


Pomimo przegranej, polecam udział w konkursie, jest to wspaniałe doświadczenie, duża szansa na nauczenie się profesjonalnego prowadzenia prezentacji oraz sprawdzenie samego siebie w roli prelegenta!

Na końcu chciałbym dodać, że dwie osoby z zeszłorocznych finałów TechEd EMEA 2007, pracują obecnie w Microsoft, a więc jest to nie tylko szansa na bycie prelegentem ale także na pokazanie się i wybicie w ścieżce kariery.

A więc uczcie się i dzielcie się wiedzą bo warto!

Barcelona

Oprócz samej konferencji, miałem także okazję zwiedzić Barcelone. Wszystkie wieczory spędzaliśmy spacerując i zajadając się lokalną kuchnią (tapas, Paella, owoce morza). W sobotę zjechaliśmy cała Barcelonę, zwiedzając ich wiecznie w budowie Sagrade Familie, pałacyk z fontannami, stadiony olimpijskie, "stare miasto" z mnóstwem małych uliczek, centrum i oczywiście plaże.


Podsumowanie

Fajnie było ale się skończyło. Mieliśmy trochę problemów z odbiorem mieszkania, no i zabrakło imprezy integracyjnej dla Polaków, tak jak miały inne kraje ale cała reszta, łącznie z pogodą, dopisała. Serdecznie polecam wyjazd na taką konferencję i udział w Speaker Idol, no i do zobaczenia za rok! Adios!

Resources

  • Strona konferencji - link
  • Galeria upominków które otrzymałem w czasie konferencji - link

niedziela, 25 maja 2008

Relacja z konkursu Win The Web - 24 hours web development contest

Minął tydzień od zakończenia konkursu, czas na krótkie podsumowanie. Ponieważ wciąż nie dysponuje wszystkim fotkami, zapewne zaktualizuje ten artykuł w ciągu kilku najbliższych dni.



Dla tych, którzy nie słyszeli jeszcze o konkursie "Win The Web", chciałbym polecić stronę konkursową http://mswtw.com/ oraz moje poprzednie artykuły na temat konkursu link1 i link2.

Krótki opis

No, więc konkurs rozpoczął się zgodnie z planem, około godziny 9:30. Odbywał się jednocześnie w 6 krajach Europy Środkowo-Wschodniej i wzięło w nim udział ponad 50 drużyn (zwykle 3 osobowych). Osobom spoza Warszawy został zapewniony nocleg.

Na początku organizatorzy opowiedzieli nam o tym, co nas czeka i jak będzie przebiegał konkurs. Następnie udaliśmy się do wylosowanych pokojów i rozpoczęliśmy przygotowania do konkursu (instalację oprogramowania, itp.). Na przygotowania mieliśmy prawie 2 godziny. O 11:30, zebraliśmy się w sali konferencyjnej, gdzie zostały rozdane zadania. O 12:00 rozpoczął się development, czyli to, na co każdy z nas czekał, od dawna.



Głównym zadaniem było stworzenie systemu do monitoringu samochodów w firmie przewozowej, czyli na starcie otrzymaliśmy bazę danych z odczytami z urządzeń GPS umieszczonych w pojazdach. Dane te należało zaprezentować w przejrzysty sposób, wypełniając przy okazji listę funkcjonalności, które aplikacja musiała spełniać (pełny opis głównego zadania -> link).

O 14:00 w pobliskiej restauracji czekał na nas obiadzik, gdzie najedliśmy się do syta oraz zrobiliśmy krótką przerwę od komputera.



Godzina 18:00 przyniosła pierwszą "wrzutę", czyli Task 1. Było to trzygodzinne zadanie za 10 punktów. Zadanie to polegało na stworzeniu aplikacji do hodowli wirtualnego stworzonka. Stworzenie można było karmić, resetować i takie tam (pełny opis zadania -> link). Część osób odpuściło sobie ten etap, gdyż za główne zadanie można było zdobyć aż 110 punktów i poświęcanie trzech godzin na to jedno, mogło się nie opłacić. W naszym wypadku, zgłosił się Jakub Korczak , który bardzo szybko i sprawnie wykonał zadanie, przynosząc nam o godzinie 21:00, 7 punktów :D



Następnie około godziny 22 (trochę inaczej niż w agendzie), przyjechało jedzonko na kolację. Pizze popite colą z kofeiną zapewniły nam siłę do pracy na resztę nocy. Oczywiście w trakcie całego wydarzenia, mieliśmy do dyspozycji mnóstwo napojów, kanapek, kawę, ciastka itd. Nikt z uczestników głodny lub spragniony nie był.

Punkt 1:00 w nocy otrzymaliśmy Task 2, którego zadaniem było stworzenie "promo site", czyli strony, która będzie opisywać naszą aplikację oraz nas samych (pełny opis zadania -> link ). Należało umieścić swoje zdjęcia, opisy, linki oraz print screeny z tworzonej aplikacji, co było ciężkie w tak wczesnym jej stadium. Task miał planowo skończyć się o 2:00 ale z jakiś nieznanych nam powodów, został przedłużony do końca konkursu i był oceniany razem z główna aplikacją. Chyba najlepszym rozwiązaniem tego zadania, było stworzenie ładnej strony w Silverlight-cie.

Naszą aplikację można obejrzeć w aplikacji konkursowej w dziale "About us" lub poniżej w tym artykule. Zanim jednak tam przejdziecie i powiecie, że to jakiś "badziew", weźcie pod uwagę, że tworzyliśmy ją tylko godzinę i był to środek nocy. :P

No i przyszła pora na punkt kulminacyjny wieczoru, czyli turniej gry w Guitar Hero 3!



Zawody rozpoczęły się o godzinie 2:00. Pomimo tego, że nie wszystkie zespoły pojawiły się w pełnym składzie, uczestników i tak było wielu. Graliśmy po dwóch/dwie osoby (tak tak była 1 dziewczyna – Elena Szapowałowa).



Zawodnik, który uzyskała lepszy wynik, przechodził dalej. W pierwszym etapie graliśmy "Santane", w drugim już nie pamiętam, ale na tym etapie odpadłem ;) Konkurs wygrał Michał Korzunowicz, który lepiej niż sam Santana, grał bezbłędnie na gitarze, pomimo tak później pory (mam nadzieję, że nie pomyliłem imienia i nazwiska, jak by co, to piszcie :P ).



Po konkursie udaliśmy się do swoich pokojów, gdzie pospieszenie, z co raz mniejszą ilością czasu, zabraliśmy się za "ostry development". Właśnie ten czas zadecydował o tym, że nasza aplikacja została ukończona na czas ;).



O godzinie 6:00 rano, powinien być Taks 3, który ze względu na problemy techniczne został odwołany.

Godzina 8:00 przyniosła nam śniadanko i chwilę odpoczynku. Chwila była krótka, ponieważ czas uciekał, a my wciąż nie mieliśmy zaimplementowanych wszystkich wymaganych funkcjonalności.

Właśnie te ostatnie godziny pozwoliły nam na sprawne połączenie wcześniej rozbitych części aplikacji w jedną "kupę". Z jednej strony była mapa Virtual Earth z zaimplementowanymi metodami w javascript-cie, z drugiej baza danych z "LINQ to Database" i WCF Services, a pośrodku, osadzony na mapie Silverlight, który miał wszystko koordynować i ładnie wyświetlać się na ekranie. ;)

Dodatkowo zrealizowaliśmy tachograph i 'menetlevel' w połączeniu z Fushion Charts, które idealnie sprawdziły się w tej roli. Oprócz podstawowych tasków, dodaliśmy także kilka "gadżetów", np. galeria samochodów zrealizowana przy pomoc Deep Zoom Composera, translator jako usługa z live.com, czy ankieta zadowolenia pracownika w Silverlight-cie.

O 11:00 rano w niedzielę zakończyliśmy nasz maraton kodowania i udaliśmy się na przygotowany w sąsiedniej restauracji obiad.



Po powrocie rozpoczął się etap "odpytki", gdzie przed zebranym jury prezentowaliśmy nasze aplikacje. Na szczęście, aplikacje mogły być uruchamiane z Visual Studio, a więc wcześniejsze zapowiedzi o ocenianiu aplikacji tylko po udanym deploy-u na serwer, nie sprawdziły się i mieliśmy więcej czasu na programowanie.

Ocenianie wyglądało na zasadzie pokazania działającej aplikacji i zaprezentowaniu listy funkcjonalności, które aplikacja musiała spełniać. Pod uwagę brany był także wygląd aplikacji, zastosowane technologie oraz extra dodatki.



Około godziny 14:00-14:30 jury zakończyło swoją pracę i podjęto decyzje, kto wygrał konkurs Win The Web w 2008 roku.



Po uroczystym rozdaniu nagród zwycięskim drużynom, uczestnicy otrzymali vouchery na taxi i rozjechali się do domów.

Uczestnicy

Pełna lista uczestników znajduje się na stronie konkursowej link. "Pending" zamiast "Accepted" wcale nie oznaczało, że ktoś nie mógł brać udziału w konkursie, po prostu organizatorzy nie zdążyli wszystkim zaakceptować statusów.

Zwycięzcy

Trzecie miejsce zajęli chłopaki z Warszawy,

czyli team

Devenue


W składzie:

Rafał Monkiewicz, Piotr Penza, Grzegorz Rycaj

A nagrodami były klawiatury i myszki Microsoft.


Drugie miejsce zajęła drużyna z B(rz)ydgoszczy (<- sami tak napisali ;])

Team:

UTP.NET TEAM

W składzie:

Michał Chyrek, Miłosz Oller, Kuba Pilecki

Nagrody za zajęcie 2 miejsca to gry Guitar Hero III (gra + gitara)


No i pierwszą nagrodę zgarnęła drużyna:

HP TEAM


W składzie:

Jacek Ciereszko, Michał Drozdowicz, Jakub Korczak

W nagrodę otrzymaliśmy po konsoli do gier "XBOX 360 Arcade" oraz oklaski. :)




Więcej informacji znajdziecie na oficjalnej stronie konkursu (link) i w newsach (link).

Drużyna HP TEAM

No więc, przyjechaliśmy na konkurs z Warszawy. To, co nas łączy, to wspólne miejsce pracy oraz pasja do programowania. Pracujemy w firmie Hewlett-Packard jako programiści i postanowiliśmy się sprawdzić biorąc udział w konkursie.

Nazwa drużyny HP TEAM wzięła się oczywiście od nazwy firmy. Gdy otrzymaliśmy zgodę na jej użycie, powstała idea żeby bardziej zaprezentować się w barwach HP, co zaowocowało przekazaniem nam gadżetów HP, które widać było między innymi podczas konkursu.



W skład zwycięskiej drużyny wchodzi Michał Drozdowicz, Jakub Korczak oraz ja, Jacek Ciereszko.

Aplikacje konkursowe

Ponieważ wciąż czekamy na umieszczenie naszej aplikacji, na ten moment mogę zamieścić tylko print screen, który mam nadzieje w najbliższych dniach uzupełnię działającą aplikacją.

Główna aplikacja:


Main Application



Task 2 (Promo Site):



Promo Site

Nic oszałamiającego, ale jak na aplikacje napisaną w godzinę to chyba nie tak źle ;)

Aplikacja wstępna (wymagana, aby móc brać udział w konkursie):


Pasjans

Podsumowując

Ze względu na wygraną, moja wizja konkursu na pewno nie jest tak obiektywna jak powinna. Smak zwycięstwa sprawił, że konkurs był jednym z lepszych w moim życiu i jestem bardzo zadowolony, że zdecydowałem się na udział. Cieszę się także, że towarzyszył mi Michał Drozdowicza oraz Jakub Korczaka, bez nich nigdy bym sobie nie poradził. Razem stanowimy zgraną i sprawną drużynę. Dzięki!

Chciałbym polecić tego typu wydarzenia, konkurs był inny niż wszystkie. Można było sprawdzić swoją wytrzymałość, przekonać się czy będziemy w stanie racjonalnie myśleć przy dużym zmęczeniu i pracując w stresie wynikłym z upływającego czasu. Umiejętność podejmowania prawidłowych decyzji w takich sytuacjach okazała się kluczowa, a nie jest łatwo rezygnować np. z wcześniej wymyślonych funkcjonalności, tylko, dlatego że zabraknie nam czasu.

Czas poświęcony na przygotowania do konkursu, kosztem między innymi prowadzenia blog-a, opłacił się. Konkurs dał mi możliwość sprawdzenia się w nowych warunkach i z przyjemnością wezmę udział w Win The Web w 2009!

Pozdrawiam,
Jacek Ciereszko

środa, 30 kwietnia 2008

Win The Web and Discover Yourself! - Termin przedłużony!

[edit 22:52 30-04-2008]

Chciałoby się powiedzieć "a nie mówiłem?". Ci co czytali mój ostatni wpis na temat konkursu "Win The Web", zapewne pamiętają, że już wtedy zakładałem przedłużenie terminu składania aplikacji wstępnych no i się nie pomyliłem. :P

Nowy termin to 14 maj 2008. Decyzje taką podjęto, ponieważ były problemy z uploadem aplikacji oraz zapewne temu, że liczba uczestników w ostatnich dniach bardzo wzrosła i mieli by oni zbyt mało czasu na napisanie aplikacji wstępnych.

Agenda wydarzenia (17-18 maj 2008).

Na forum oficjalnej strony (jak na razie jedyne źródło informacji o konkursie) pojawiła się też agenda wydarzenia.


W razie problemów z uploadem aplikacji, podano także adres email Pana z Węgier (Szabolcs Lippe slippe"at"microsoft.com). W razie problemów, można wysłać aplikację bezpośrednio do niego.

Osobami kontaktowymi w Polsce są Janusz Berta (Microsoft) oraz Eugeniusz Licznarowski (Microsoft). Zwykle można ich spotkać na forum strony konkursowej.

W sprawie nagród lokalnych, wszystko pozostaje po staremu, czyli:

  • I miejsce: Xbox360 (dla każdego członka zespołu)
  • II miejsce: Guitar Hero III (gra + gitara) (dla każdego członka zespołu)
  • III miejsce: zestaw Microsoft klawiatura + mysz (dla każdego członka zespołu)
[edit]:
Właśnie pojawiły się nowe zmiany (także w regulaminie :/ ). Zmiany na szczęście są chyba na plus, ponieważ aby wziąć udział w konkursie wystarczy dostarczyć tylko jedną aplikację.

Dodatkowo pojawiło się info o nagrodach w skali międzynarodowej, czyli dla zwycięzców z wszystkich krajów (link).

Resources:

  • Mój poprzedni artykuł na temat konkursu (link).
  • Oficjalna strona konkursu (link)
  • Polski dział na forum (link) – swoją drogą, najbardziej rozbudowany ze wszystkich krajów :)


Pozdrawiam i do zobaczenia 17 maja,
Jacek Ciereszko

Win a Silverlight skateboard! - Oz Remix Silverlight Video Clip Contest

Kilka dni temu pojawił się kolejny konkurs dotyczący technologii Silverlight. Polega on na przygotowaniu najciekawszego clipu muzycznego do utworu "Step Back" - Sydney/NY musician Matt Broadfoot. Wybierane są trzy najlepsza animacja stworzona w Expression Blend pod ten utwór.

Przykład aplikacji konkursowej możecie zobaczyć na blogu Shane Morrisa (link). Do stworzenia własnej animacji można wykorzystać także zamieszczony projekt startowy (link) oraz screencast.

A nagrody w konkursie to:

  1. Pierwsza nagroda to deskorolka Silverlight oraz bilet na "08 Australia Event" w Melbourne lub Sydney.
  2. Druga nagroda to Microsoft Zune® oraz bilet na "08 Australia Event" w Melbourne lub Sydney.
  3. Trzecią nagrodą jest myszka Microsoft Wireless Presenter oraz bilet na "08 Australia Event" w Melbourne lub Sydney.

Po więcej detali odsyłam Was na oficjalną stronę konkursu Oz Remix Silverlight Video Clip Contest.

Termin nadsyłania zgłoszeń to 12 Maj 2008.

A teraz żeby ostudzić Wasz zapał i sprawdzić czy do końca czytacie artykuły, powiem tylko, że konkurs ten ma jeden mały minus. Otóż przeznaczony jest tylko dla osób z Australii :P . Ocenianie będą tylko i wyłącznie aplikacje z Australii, osoby spoza mogą oczywiście wysyłać swoje aplikacje, ale niestety nie będą brały udziału w klasyfikacjach i nie ma przeznaczonych dla nich nagród.

A wystarczyłoby tak na prawdę dodać dodatkową kategorie dla osób spoza Australii, ufundować kilka nagród i nikt nie był by pokrzywdzony ;)

Ja mimo wszystko polecam wciąć udział w tym konkursie, poznać lepiej Expression Blend i pokazać Australijczykom, że potrafimy stworzyć coś lepszego nawet, jeśli nie dostaniem za to nagrody.

Resources:


Pozdrawiam,
Jacek Ciereszko

niedziela, 20 kwietnia 2008

Win The Web and Discover Yourself! - 24 hours web development contest

Chciałem wszystkim przypomnieć lub zaprosić na konkurs programistyczny Win The Web, który odbędzie się w 6 krajach Europy Środkowo-Wschodniej jednocześnie (Czechy, Słowacja, Bułgaria, Polska, Słowenia oraz Węgry). Konkurs będzie polegać na stworzeniu w ciągu 24h aplikacji webowej na zadany temat.

Konkurs dotyczy technologii Silverlight, ASP .NET 3.5 i usług Windows Live. W trakcie wydarzenia będzie także kilka konkursów towarzyszących, np. rok temu była to gra w FIFE o punkty na XBOXsie ;)

Nagrodami w konkursie są (informacja ze źródła na codeguru.pl ):

  • I miejsce: Xbox360 (dla każdego członka zespołu)
  • II miejsce: Guitar Hero III (gra + gitara) (dla każdego członka zespołu)
  • III miejsce: zestaw Microsoft klawiatura + mysz (dla każdego członka zespołu)


Nagrody różnią się w zależności od kraju w którym odbywa się konkurs, dlatego nie znajdziecie informacji o nagrodach na oficjalnej stronie.

[edit 12.05.2008] : zmiany w regulaminie (see link)

Aby wziąć udział w konkursie, należy zapisać się na oficjalnej stronie http://mswtw.com, oraz dostarczyć do dnia 1 maja aplikacje wstępną (z tym 1 maja gdzieś kiedyś przeczytałem, a teraz nie mogę znaleźć tej informacji, a więc być może deadline został przedłużony). Lista aplikacji do zrobienia, znajduje się na stronie konkursu (link). (Zarejestruj się).

(Ja już się zapisałem, skompletowałem drużynę i kończę pisać aplikację wstępną. Temu też ostatnio na blogu pojawia się mniej wpisów, ale wszystko nadrobię jak tylko przygotuje się do konkursu.)

[edit 12.05.2008] : aplikacja wstępna link

Historia

A tak wyglądało Win The Web w 2007 roku na Węgrzech link. Nagrodą wtedy było około 5000$! (1 milion forintów węgierskich) .


Resources


Pozdrawiam i do zobaczenia 17 maja, Jacek Ciereszko

poniedziałek, 7 kwietnia 2008

Moje wrażenia po C2C - materiały

No i po konferencji. W moim poprzednim artykule przypominałem o terminach, mam nadziej, że wszyscy którzy zadeklarowali się, to przybyli i że im się spodobało tak jak mi. Ja nie żałuje ani jednej sekundy spędzonej na konferencji. Impreza była bardzo dobrze zorganizowana i przemyślana. Pyszna pizza na obiad, zamiast oklepanego cateringu, piłeczki z logiem (cały dzień się nią w pracy bawiłem) oraz wielkie osobistości.



Na konferencję przybyło bardzo dużo osób z różnych części Polski i Świata. Sesje rozpoczeli Maciej Szczepański i Paweł Leśnikowski wystąpieniem na temat Test Driven Development (TDD) w praktyce.



Następnie Martin Kulov, na prezentacji zatytułowanej "Debugging and Crash Dump Analysis of ASP.NET Web Sites", zaprezentował narzędzia do usprawnienia debugowania i wykrywania "błędów nie do wykrycia".


Kolejną prezentacje poprowadził Jarosław Kowalski na temat "Wprowadzenie do Entity Framework".



Jako czwarty, od razu po obiadku, wkroczył, a raczej wbiegł (patrz film) Dino Esposito. Dino opowiedział zgromadzonym na sali słuchaczom o Frameworku MVC dla ASP.NET, czyli "Understanding Goals and Features of the ASP.NET MVC Framework".





Na końcu, Dino zorganizował konkurs w którym udział wzięły wybrane osoby i sobie rzucały piłeczką do torebki. W ten oto sposób tylko jedna z nich "coś" dostała, a więc mogło być lepiej.



Ostatnią sesje poprowadzili chłopaki z Krakowskiej Grupy .NET (Marcin Celej i Michał Brzozowski) na temat ".NET Developer Toolbox A.D. 2008".


Po dokładne opisy przedstawionych sesji odsyłam was do:



No i na koniec, zdjęcie podsumowujące oraz podziękowania ode mnie i nie tylko, dla wszystkich prelegentów, którzy przekazali nam dużą dawkę wiedzy oraz organizatorom za bardzo duży wysiłek i trud włożony w przygotowanie tak fajnej imprezy.

Z przyjemnością wybiorę się na C2C2009.






Jacek Ciereszko