sobota, 15 marca 2014

In-house made software vs. External vendor software


Miałam przyjemność pracować w wewnętrznym dziale IT, który dostarczał aplikacje wspierające działalność biznesową firmy (która nic z IT wspólnego nie miała). Obecnie mam przyjemność pracować w firmie, która jest dostawcą rozwiązań IT - więc końcowy klient aplikacji jest "na zewnątrz". Tak się zastanawiałam - czy są znaczące różnice w produkcji aplikacji w przypadku tych dwóch modeli?

Komunikacja
Po pierwsze, jeśli jesteś dostawcą - nie masz bezpośredniego kontaktu z klientem. Czasami IT nie ma kontaktu z klientem wcale (cała komunikacja jest kierowana przez określone proxy). Jeśli pracujesz jako wewnętrzny dostawca, to zawsze możesz złapać swój "biznes" na korytarzu, w kuchni tudzież w innym miejscu - i zadać pytania ;) To sprawia, że praca jest znacznie prostsza!

Elastyczność
Oczywiście elastyczność jest mocno związania z komunikacją. Filozofia agile pozwala na łatwe i szybkie dostosowanie planów do szybko zmieniającej się rzeczywistości. Czyli jeśli IT ma dobre stosunki z biznesem, to wszystko pięknie funkcjonuje. A co gdy komunikacja nie zachodzi wcale? (To pytanie pozostawiam jako retoryczne ;))
Agile nie jest lekarstwem na wszystkie bolączki. Jeśli klient zmienia zdanie ciągle, przykładowo: podczas pierwszej iteracji chciał czołg, podczas drugiej helikopter aż finalnie w trzeciej okazało się że chce łódź podwodną, wtedy produkt finalny będzie wyglądać jak mały (albo ogromny) potworek. Elastyczność jest ważna, ale powinna mieć swoje granice!

Odpowiedzialność
Jeśli pracuje się dla wewnętrznego klienta, to chce się mu umożliwić "zarabianie", bo przecież dzięki temu jest wstanie zapłacić za wykonaną pracę. Proste, nieprawdaż? Doprowadzenie własnego pracodawcy do bankructwa jest podcinaniem gałęzi na której się siedzi, więc nikt o zdrowych zmysłach tego nie chce. Jeśli jest się zewnętrznym dostawcą, to presja jest nawet większa - "firma-matka" zarabia na dostarczaniu aplikacji, więc jak jakość aplikacji jest niska, to nikt jej nie kupi. Jeśli natomiast wdrożenie aplikacji "zbije" firmę klienta, to nikt inny na rynku nie pokusi się o kupienie*.

*wyjątek stanowi SAP, który "zabił" jednego ze swoich klientów (FoxMeyer), a mimo to ma się świetnie. Więcej o FoxMeyer można poczytać >>tu<<

Cel
Wracając do pierwotnie zadanego pytania - oczywiście różnice istnieją, ale w obu przypadkach cel jest jeden. Stworzyć super oprogramowanie :) Programiści to pasjonaci, który lubią pisać porządny kod (tak, są geekami i zwykle są z tego dumni :)).


Źródło: http://geek-and-poke.com/geekandpoke/2014/3/4/hr-is-key

sobota, 1 lutego 2014

Krakowska społeczność technologiczna rośnie!

Kiedyś pisałam o wszystkich wydarzenia na których byłam. Kiedyś było tylko parę interesujących mnie wydarzeń, ale teraz... Jestem na jakimś co tydzień! Czasem jest codziennie (od poniedziałku do piątku) na jakimś meetupie! 

To jest niesamowite! Jak chcesz poznać interesujących ludzi - zerknij w kalendarz, znajdź wolny wieczór a potem... odszukaj meetup (czasem jest więcej niż jeden tego samego dnia, więc wybór może być trudny ;)). Jeśli chcesz się nauczyć czegoś nowego - sytuacja jest analogiczna! Ale aby być szczerą, to muszę powiedzieć że darmowe szkolenia zdarzają się z częstotliwością raz na tydzień (statystycznie). 

Atmosfera dzielenia się wiedzą w Krakowie jest niezwykła. Ludzie prowadzą warsztaty/meetupy całkowicie za darmo. Oferują swój czas, wiedzę dla społeczności - co jest bardzo inspirujące. Oprócz warsztatów i meetupów, są też darmowe konferencje oraz inne atrakcje. Tak! Całkowicie za darmo :) 

Dzielenie się jest super, więc może dołączyć do Krakowskiej społeczności technologicznej?
Tu możesz znaleźć informację o zbliżających się wydarzeniach:
http://crossweb.pl/ (nie tylko dla Krakowa)
https://evenea.pl/ (nie tylko dla Krakowa)
http://www.meetup.com/ (nie tylko dla Krakowa)


Do zobaczenia, mam nadzieję! 




fot. Agnieszka Celińska

czwartek, 23 stycznia 2014

Ogarnięcie zmiany

Witam w 2014!

Ostatnia notka była wieki temu, ale nie bójcie się – następne będą już publikowane regularnie.
Sporo zmian w moim życiu, spowodowało ubytki w czasie na tyle duże, że aż musiałam zaprzestać pisania. Na całe szczęście teraz jest stabilnie (lub przynajmniej nie zmienia się tak gwałtownie), więc mogę wrócić do blogowania ;)

Co zmieniłam? Pracę, brażnę i mieszkanie. Ogromne zmiany! A przyplątały się też mniejsze jako efekt uboczny. Wszystkie pozytywne, więc jest się z czego cieszyć ;)

Jak poradzić sobie ze „ogarnięciem” zmiany?
W internecie można znaleźć morze rad, ale ja zdecydowałam się na użycie technik które stosuje w codziennej pracy… Zidentyfikowałam akcje i zadania które muszę wykonać, wpisałam je do swojego „backlogu”, sklasyfikowałam (wg MoSCoW), ustaliłam priorytety i… wykonałam. Najcięższą częścią było ustalenie priorytetów i wyrzeczenie rzeczy które chciałam zrobić, ale nie mam na nie czasu (jak blogowanie). Możecie zapytać – dlaczegóż to cokolwiek wyrzucać? Niestety ograniczenia są bezlitosne, w tym wypadku winnym był wspomniany czas który wynosił jak na złość ciągle 24h na dobę.

Jak ustalałam priorytety?
Prosta tabelka, a w niej lista zadań plus kolumny z szacunkowymi wartościami dla: ważności, priorytetu, konsekwencji jeśli nie zrobię na czas danego zadania, zadowolenia z wykonania itp. Dla wszystkich „wskaźników” zastosowałam tą samą skalę, oznaczyłam jako stymulanty i stymulanty a na koniec odpowiednio dodałam. Potem sortowanie i ostatni krok typowo „heurystyczny” – czyli przestawiłam odrobinę kolejność wg własnego uznania.
Dlaczego nie oceniłam ile czasu na wykonanie zadań potrzebuję? Zwyczajnie nie miałam wyboru i musiałam zrobić wszystko z listy „must have”. Dlatego porostu brałam zadania w kolejności i… wykonałam je. Brzmi banalnie, prawda?

Jak widać, można wykorzystać znajome z pracy techniki, w celach nie koniecznie zawodowych!

Życzę wam szczęścia we wszystkich planowanych zmianach w 2014 roku! 

środa, 18 grudnia 2013

Sztuczki w Balsamiq


Uwielbiam makiety w rozumieniu prototypów aplikacji. Dlaczego? Bo to świetny sposób na pokazanie użytkownikowi jak aplikacja będzie wyglądać zanim jej kodowanie się zacznie (pozwala to też przedyskutować zbyt abstrakcyjne dla 'biznesu' rzeczy na "żywym" przykładzie).

Balsamiq jest programem, dzięki któremu możemy stworzyć pliki pdf w które da się klikać. Nawet najbardziej oporny użytkownik nie pomyśli, że to jest już 'prawie' gotowa aplikacja (więc nie ma niebezpieczeństwa, że poprosi o jej wdrożenie... jutro!). Makiety robione w narzędziach typu 'Just in mind' są łudząco podobne do aplikacji, co może być mylące i... użytkownik może pomyśleć, że aplikacje jest prawie gotowa ;)

Mam nadzieję, że udało mi się was zachęcić do prototypowania. Poniżej kilka wskazówek jak zabrać się za robienie makiety w Balsamiq:

  • zaplanuj jak wygląda "flow" w aplikacji
  • wybierz opcje które chcesz pokazać (lepiej wybrać parę różnych niż takich które wyglądają bardzo podobnie do siebie)
  • zastanów się na sekwencją, którą użytkownik powinien podążać klikając w prototyp
  • przygotuj sobie szkielet dla wszystkich ekranów (obrazy które pokazują stan aplikacji)
  • przygotuj ekrany które odpowiadają zaplanowanej sekwencji (jedna akcja - jeden obraz)
  • stwórz linki między ekranami
  • zapisz jako Pdf
  • gotowe :)


Zajrzyj do innych notek o prototypowaniu!

niedziela, 15 grudnia 2013

Bajka o kopciuszku

Znacie historię Kopciuszka?

Właśnie ta bajka stanowiła inspirację dla mojego dzisiejszego warsztatu świątecznego :) Mam nadzieję, że wam się spodoba! 

sobota, 14 grudnia 2013

Kanban-ish

Wiecie co jest najlepszą częścią meetup'ów i innych spędów dla pasjonatów IT? Nieformalne dyskusje po! 

Ok, ale może zacznę od początku i małego wprowadzenia. W zeszłym tygodniu byłam na spotkaniu ALE Kraków - warsztat prowadziła +Oana Juncu, a mówiła o Innovation@Games. Warsztat był podzielony na część teoretyczną i praktyczną (i jak podejrzewacie, ta praktyczna najbardziej mi się podobała ;)). W czasie tej krótkiej sesji grupom warsztatowym udało się stworzyć projekty w formie papierowych mockup'ów bardzo ciekawych aplikacji. Nie mogę się już doczekać, aż zastosuję tą metodę w pracy :)

Oczywiście po zakończeniu szkolenia, była dyskusja. Dla mnie szczególnie inspirująca ponieważ Oana pracowała w Eurosporcie, więc mogłyśmy wymienić opinie na temat wyzwań jakie stawia IT 'klient' jakim jest telewizja. Bardzo inspirujące! Ale nie o tym dziś. Dyskusja była też o innych ciekawych trendach związanych z IT. Bardzo podobała mi się dyskusja o Kanbanie, który stanowił przykład 'przestrzegania zasad metodyki'. Dużo ludzi używa Kanbanu, ale pytanie brzmi: czy używają tego poprawnie? Jak użyć Kanbanu efektywnie? Oczywiście zdania były podzielone, ale konkluzją było:

  • metodyka (Kanban i każda inna) jest dla ludzi, a nie na odwrót,
  • ludzie mogą (i powinni!) dostosowywać ją do swoich potrzeb,
  • przestrzeganie reguł od A do Z nie koniecznie przyniesie oczekiwane rezultaty, 
  • nie ma nic złego w używaniu czegoś Kanbano-podobnego dopóki to działa - to dotyczy także innych metodyk!  





Przykład tablicy Kanbanowej. Źródło: http://www.iddblog.org/?p=1150


A tak przy okazji - pamiętacie o moim jutrzejszym warsztacie? Do zobaczenia! 

wtorek, 10 grudnia 2013

Świąteczne warsztaty

Już w następną niedzielę prowadzę kolejny warsztat dla Analityków, Product Ownerów i nie tylko! (Spokojnie, jak masz z tą działką nie wiele wspólnego a temat Cię interesuje - zapraszam, na pewno będzie coś interesującego i dla Ciebie). 
Tym razem przedstawię tajniki zbierania wymagań... w formie świątecznej baśni :) Będzie świetna zabawa! 

Temat: Aplikacja od początku do końca - czyli skąd programiści wiedzą co pisać?
Koszty: Za darmo, ale wymagana rejestracja: http://swietaggc.evenea.pl/ 
Kiedy: 15.12.2013, 17:00
Gdzie: Pauza In Garden, Rajska 12, 31-124 Kraków

View Larger Map

Do zobaczenia!