Archiwum kategorii: IT, aplikacje i cała reszta

Czego nauczyła mnie praca w Scrumie?

Piszą i mówią o Scrumie wszyscy, od lat wydaje się być nieprzemijającą modą. Zanim zaczęłam pracować w jakiejkolwiek metodologii Agile, byłam wielką entuzjastką;) Po jakimś czasie okazało się, że nie jest jednak tak kolorowo. Nie przepadałam za pracą w systemie Scrum – zwłaszcza w nieco tępym wydaniu korporacyjnym, gdzie sporą część czasu przeznaczonego na pracę zajmuje „proces” – przeciągające się ponad miarę spotkania, z których nic nie wynika; rozproszenie odpowiedzialności; ciągłe kłótnie itd.). Nie mi oceniać, dlaczego system czasem tak bardzo nie działa, że aż zgrzyta. Na szczęście są i jasne strony, a sam Scrum wielu dobrych rzeczy mnie nauczył.

Retrospektywy

Weźmy takie retrospektywy – niby takie spotkanie-zapchajdziura, siądziemy i pogadamy, a potem się rozejdziemy i tyle. Jednak dobrze poprowadzone retro okazuje się być całkiem niezłym narzędziem. Pod warunkiem wprowadzenia pewnej dyscypliny: z każdego, nawet luźnego narzekania sporządzamy notatkę, a następnie wspólnie zastanawiamy się, co można zrobić, aby to ulepszyć? Gdy już wymyślimy rozwiązania i rozejdziemy się do biurek, nadchodzi druga, najważniejsza część – realizacja! Zatem działamy, najlepiej krok po kroku, z rozbiciem na mniejsze fragmenty. Szukamy w zakresie strefy własnego wpływu, a dopiero jeśli działania nie przyniosą skutku, pójdziemy dalej. Na następnych retrospektywach przeglądamy sporządzoną wcześniej listę – czy coś się poprawiło? A może w jakiś kwestiach jest gorzej?

Dodatkowe narzędzia

Jeszcze ciekawiej jest, jeśli do tego typu działań zaprzęgniemy narzędzia coachingowe, takie jak np. koło życia. Oczywiście jesteśmy na płaszczyźnie biznesowej, zatem rubryki będą nieco inne, niż typowo się je przedstawia 😉 Warto po prostu zainspirować się i pamiętać, że na wydajność w pracy ma wpływ wiele czynników. Mogą to być np.: zadowolenie z zadań, rozwój, finanse, relacje w zespole, otoczenie itd. W każdej z tych dziedzin można szukać usprawnień – continuous improvement zobowiązuje 😉

Życie!

Lubię przenosić tą praktykę na obszar prywatny. Ktoś wciąż jęczy i narzeka? Ok! Biorę kartkę (lub smartfona) i zaczynamy zastanawiać się, co zatem można poprawić. Niektóre osoby są naprawdę w szoku – to tak można żyć? 🙂 Można, do czego zachęcam* 🙂

* Podpisano: Największa Maruda Świata.

Habitica

Czy znacie aplikację Habitica? Jeśli nie, to warto, abyście się z nią zapoznali 🙂

Lubię połączenie przyjemnego z pożytecznym. Nauka przez zabawę? Super połączenie. Habitica jest właśnie jedną z takich aplikacji. Stanowi całkiem ciekawe połączenie gry RPG z aplikacją do ćwiczenia nawyków. Trenuj bieganie, sprzątaj biurku i ubijaj potwory. Brzmi zabawnie? 😉 Elementy grywalizacji (zbieranie punktów, granie w ramach drużyny – uczestnicy otrzymują obrażenia, jeśli nie wypełnimy swoich codziennych zadań!) dodatkowo wzmacniają motywację do wykonywania zaplanowanych czynności.

Do dyspozycji mamy aplikację mobilną (iOS, Android) oraz dostęp przez przeglądarkę.

Habitica - screen z gry

Zastosowania

Osobiście używam Habitici jako:

  • przypominajki o rzeczach, które chcę zrobić każdego dnia (np. odhaczam sobie, ile wody wypiłam, czy wzięłam suplementy itd.)
  • listy TODO, na której wpisuję pomysły i typowe sprawy do załatwienia
  • gry – lubię od czasu do czasu zalogować się przez przeglądarkę i wykluć zwierzaka
  • czatu – świetne miejsce do ćwiczenia angielskiego, w gildiach i tawernie pisać można z ludźmi z całego świata, a poziom kultury oceniam na +bdb 🙂

Wady i zalety

Dodatkowe zalety? Bardzo duża społeczność! Znajdziemy tu mnóstwo aktywnych czatów (lubię zaglądać np. do grupy Polska albo Lifehackers, skąd dowiedziałam się np. o technice Pomodoro), ciekawych wyzwań, do których można dołączyć (np. przeczytać 5 książek w wakacje, albo wyklikać 30 nowych słówek w aplikacji FreeRice). Aplikacja jest całkiem szybka i intuicyjna.

Wady? Odstraszać może interfejs – cóż, stylistyka starej gry, nie każdemu może przypaść co gustu 😉 Czasem coś się zawiesi, czasem system nie działa, a aktualizacja wprowadzi błędy regresji – na szczęście szybko są poprawiane, a wszystkie te problemy są praktycznie niezauważalne w codziennym użytkowaniu.

Ogólnie na plus! Polecam 🙂

 

Jak zrobić screenshot w Ubuntu

Nie wyobrażam sobie życia bez możliwości robienia screenshotów. Czasem po prostu chcę komuś coś pokazać, czasem dodać ilustrację do notki na bloga, czasem udokumentować jakąś akcję (na przykład… BUGA). Zazwyczaj naciskam w tym celu Print Screen, wklejam do programu graficznego, zapisuję i gotowe. Tymczasem okazało się, że w Ubuntu 12.04 (z Unity na pokładzie), którego aktualnie używam, wcale nie jest to takie proste… Pojawiło się pytanie: zatem jak zrobić screenshot w Ubuntu?

O ile sprawa dotyczy zwykłego zrzutu, problemu nie ma – zaraz po wciśnięciu przycisku Print Screen na ekranie pojawia się okno z pytaniem, czy zapisać obraz do pliku, czy skopiować do schowka. Problem pojawia się natomiast, gdy chce się wykonać zrzut ekranu, na którym widać… rozwinięte menu. Na szczęście jest na to sposób: Czytaj dalej

Kernel: Don’t panic – wrażenia z konferencji

W ubiegłym miesiącu, dla zabicia czasu w sobotni, deszczowy dzień, wybrałam się na studencką konferencję organizowaną przez Koło Naukowe Kernel, o nazwie Kernel: DON’T PANIC! Odbywała się ona 13 maja ’17, w dużej auli Wydziału Fizyki i Informatyki Stosowanej AGH, którą darzę dużym sentymentem:D

Logo Kernel: Don't panic

Organizacja na piątkę. Szatnia, ciasteczka, gorąca kawa, a nawet upominki dla uczestników: smyczki i elegancka torba z nadrukiem loga koła, a w środku pisadło i butelka wody (może na kaca, w końcu Juwenalia:D). Słowem profeska i szacunek dla organizatorów za ogarnięcie tematu (a dla sponsorów za sypnięcie groszem:))

Przechodząc jednak do merytoryki muszę powiedzieć, że wykłady trzymały poziom. Na scenie udało się zgromadzić naprawdę ciekawych prelegentów.

Wykłady na „Kernel: Don’t panic”

Na początek Piotr Konieczny, którego przedstawiać myślę nie trzeba (niebezpiecznik.pl), opowiedział o kulisach ataków socjotechnicznych. Okazuje się, że czasem nawet świadomość i wiedza pracowników nie wystarcza, by uchronić organizację przed przemyślanym atakiem socjotechnicznym. Bardzo często działamy automatycznie, nawykowo. Na na domiar złego w grupie myślenie i odpowiedzialność ulega rozproszeniu, skutkiem czego niestety, najsłabszym ogniwem zabezpieczeń bywa człowiek. Naprawdę warto było wstać przed ósmą (w sobotę!) i pomknąć przez deszczowy Kraków, by dotrzeć na ten wykład!

Wykład pt. „Metodologia tworzenia oprogramowania przez IBM spełniającego wymogi cyber-bezpieczeństwa” niestety ciut mnie rozczarował, więc przejdę od razu do kolejnego punktu, czyli wystąpienia naczelnika krakowskiego wydziału policji do walki z Cyberprzestępczością. Czytaj dalej

Catch-all czyli złap maile wysłane pod zły adres

Niestety ludzie czasem mylą się – popełniają literówki w imieniu albo przekręcają nazwisko. Wisniewski@onedaymail.com czy Wisniowski@onedaymail.com? Jak skonfigurować serwer pocztowy, żeby pobierał także wiadomości wysłane na niepoprawny adres? Odpowiedzią jest catch-all.

Jeśli mamy skrzynkę pocztową u usługodawcy typu Gmail, Poczta O2 itp. niestety nie mamy zbyt wielkiej możliwości manewru. Oczywiście mozna by założyć drugą skrzynkę z przekręconym nazwiskiem i ustawić przekierowanie, nie zawsze jednak jest to możliwe. Na szczęście skrzynkę pocztową można założyć na własnym serwerze – najczęściej kupując konto hostingowe (najlepiej z własną domeną) istnieje także możliwość założenia poczty w tej domenie.

Konfiguracja sprowadza się do włączenia usługi catch-all. W zależności od panelu administracyjnego konfiguracja może wyglądać nieco inaczej. Pokażę na przykładzie Direct Admin.

Jak skonfigurować catch-all?

  1. Zakładam skrzynkę, która będzie używana do zbierania wszystkich maili. Warto ustawić jej ograniczenie zajmowanej powierzchni (quota) ponieważ na takiej skrzynce może gromadzić się sporo spamu!
  2. Włączam catch-all, przekierowując wszystkie zabłąkane maile na stworzoną przed chwilą skrzynkę.
  3. Gotowe 🙂 Można przetestować wysyłając maila na adres cokolwiek@twojadomena.xx, blablabla@twojadomena.xx itd. 🙂

W panelu Direct Admin wygląda to tak:

Konfiguracja catch-all w Direct Admin

I konfiguracja przekierowania:
Konfiguracja catch-all w Direct Admin - przekierowanie poczty

Jeżeli nie chcemy logować się na tak stworzoną pocztę „serwerową”, można ustawić także, aby wszystkie maile były przekierowane do używanej przez nas na co dzień skrzynki (np. Gmail).

 

Jak odpakować tar.gz

Aby odpakować tar.gz czyli skompresowane archiwum, można spróbować komendy tar -zxvf, gdzie:

  • z – (zip), zdekompresuj
  • x – (extract), wypakuj na dysk
  • v – (verbose), bardziej szczegółowe logowanie
  • f – (file), odczytaj archiwum z pliku podanego w parametrze

Mój plik był jednak bardziej złośliwy:

d9k@Nihilia:~/folder$ tar -zxvf export.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

Jak widać w przykładzie wyżej, pomimo że plik wygląda jak spakowane archiwum tar+gzip, wcale tak nie jest – komunikaty mówią, że plik nie jest w formacie gzip. Nie jest więc spakowany. Wystarczy zatem użyć samego tar -xvf:

d9k@Nihilia:~/folder$ tar -xvf export.tar.gz

Tym razem się udało i na dysku mamy odpakowane pliki.

Instalacja ROOT w systemie Ubuntu

ROOT jest biblioteką do analizy danych, statystyk, wizualizacji danych. Używany jest najczęściej w jednostkach naukowych (CERN, uczelnie itd.). Świetny opis instalacji tego frameworka znalazłam tu:
https://yannisflou.wordpress.com/2012/06/05/root-data-analysis-framework-on-ubuntu-12-04/. Instalacja ROOT jest tu naprawdę dobrze opisana.

Poniżej przedstawiam opis instalacji pod systemem Ubuntu 12.04, w języku polskim – dla absolutnych początkujących, nie znających systemu Linux.

Download

Ściągnęłam wersję ROOT 5.34/36 wybierając typ: „Source” na podstronie wersji: https://root.cern.ch/content/release-53436. (Po instalacji przedstawia się jako:
v5-34-36@v5-34-36, Apr 05 2016, 10:25:45 on linuxx8664gcc)

Rozpakowanie

d9k@Nihilia:~$ cd rootSOURCE
d9k@Nihilia:~/rootSOURCE$ gunzip root_v5.34.36.source.tar.gz
d9k@Nihilia:~/rootSOURCE$ tar xvf root_v5.34.36.source.tar

Miejsce docelowe instalacji

ROOT-a installować będziemy w folderze /opt/ROOT/. Folder „opt” był używany niegdyś do instalowania oprogramowania niezwiązanego z systemem (coś jak windowsowe „Program files”). Obecnie zaleca się używać ścieżki /usr/local, w mojej instrukcji użyję jednak „starodawnych” rozwiązań :)Stworzenie folderu:

d9k@Nihilia:~/rootSOURCE$ sudo mkdir /opt/ROOT/

Stworzenie tymczasowej zmiennej globalnej (w następnych krokach „utrwalimy” ją, aby była dostępna także po zamknięciu tej sesji terminala):

d9k@Nihilia:~/rootSOURCE$ export ROOTSYS=/opt/ROOT

Możemy sprawdzić, czy się utworzyła:

d9k@Nihilia:~/rootSOURCE$ echo $ROOTSYS
/opt/ROOT

Ok.

Configure

Configure to pierwszy krok instalacji. W skrócie Configure jest to skrypt, który na bazie podanych mu opcji (i zmiennych, uwarunkowań i zależności istniejących w systemie) tworzy plik Makefile, który z kolei zostanie użyty w kolejnych krokach.Można wyświetlić sobie helpa polecenia Configure – najlepiej zrzucając go do pliku, bo opcji konfiguracji ROOT-a jest ogólnie bardzo dużo. Instalować będziemy w opcjach domyślnych, wskazując jedynie miejsce instalacji.

d9k@Nihilia:~/rootSOURCE$ cd root
d9k@Nihilia:~/rootSOURCE/root$ ./configure --help > ../configure_help.txt

I wywołanie samego polecenia – ze wskazaniem mu ścieżki, gdzie ROOT ma zostać zainstalowany:

d9k@Nihilia:~/rootSOURCE/root$ ./configure --prefix=/opt/ROOT

Make

Wykonanie tego kroku trwało dość długo. Podczas tego etapu źródła są budowane za pomocą pliku Makefile, zawierającego instrukcje budowania.

d9k@Nihilia:~/rootSOURCE/root$ make

Make install

Wreszcie ostatni krok. Na tym etapie skompilowany program jest kopiowany do miejsca docelowego (podanego w parametrze „prefix” na etapie konfiguracji).

d9k@Nihilia:~/rootSOURCE/root$ sudo make install
[sudo] password for d9k:
============================================================
=== ROOT BUILD SUCCESSFUL. ===
=== Run 'make install' now. ===
============================================================
Installing binaries in /opt/ROOT/bin
Installing libraries in /opt/ROOT/lib/root
Installing headers in /opt/ROOT/include/root
Installing /home/d9k/rootSOURCE/root/main/src/rmain.cxx in /opt/ROOT/include/root
Installing cint/cint/include cint/cint/lib and cint/cint/stl in /opt/ROOT/lib/root/cint
Installing icons in /opt/ROOT/share/root/icons
Installing fonts in /opt/ROOT/share/root/fonts
Installing misc docs in /opt/ROOT/share/doc/root
Installing tutorials in /opt/ROOT/share/doc/root/tutorials
Installing tests in /opt/ROOT/share/doc/root/test
Installing macros in /opt/ROOT/share/root/macros
Installing man(1) pages in /opt/ROOT/share/man/man1
Installing config files in /etc/root
Installing Autoconf macro in /opt/ROOT/share/aclocal
Installing Emacs Lisp library in /opt/ROOT/share/emacs/site-lisp
Installing GDML conversion scripts in /opt/ROOT/lib/root
d9k@Nihilia:~/rootSOURCE/root$

Udało się.

Source

Krok wymagany przez program ROOT – uruchomienie skryptu „thisroot.sh„, ustawiającego ścieżki używane przez program ROOT, takie jak $ROOTSYS, $LD_LIBRARY_PATH, $DYLD_LIBRARY_PATH, $PATH, $LIBPATH i wiele innych. Jego treść można oczywiście podejrzeć dowolnym edytorem:

d9k@Nihilia:~$ cat /opt/ROOT/bin/thisroot.sh

Ok, czas na wykonanie tego skryptu:

d9k@Nihilia:~$ source /opt/ROOT/bin/thisroot.sh

Uruchomienie

Nareszcie możemy uruchomić program ROOT:

d9k@Nihilia:~$ root
*******************************************
* *
* W E L C O M E to R O O T *
* *
* Version 5.34/36 5 April 2016 *
* *
* You are welcome to visit our Web site *
* http://root.cern.ch *
* *
*******************************************ROOT 5.34/36 (v5-34-36@v5-34-36, Apr 05 2016, 10:25:45 on linuxx8664gcc)CINT/ROOT C/C++ Interpreter version 5.18.00, July 2, 2010
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
root [0]

Utrwalenie zmiennych

Po wyłączeniu terminala, ustawiona w poprzednich punktach zmienna ROOTSYS zniknie. Można ją utrwalić.Jak czytamy w helpie Ubuntu:
„A suitable file for environment variable settings that affect the system is /etc/environment.
An alternative is to create a file for the purpose in the /etc/profile.d directory.”Modyfikujemy zatem plik:

 d9k@Nihilia:~$ sudo gedit /etc/environment

Dodając na koniec:

ROOTSYS="/opt/ROOT"

Aby nie trzeba było za każdym włączeniem terminala uruchamiać na nowo skryptu thisroot, można ustawić, aby skrypt był uruchamiany przy starcie systemu:

d9k@Nihilia:~$ sudo gedit .bashrc

Na końcu dodając linijkę:

source /opt/ROOT/bin/thisroot.sh

Gotowe 🙂

Jeśli chcesz natomiast przeczytać, jak zainstalować moduł LHAPDF, pisałam o tym tutaj.

Składanie PIT pod systemem Linux + 1% na naukę

Nie będę powielać tematu, ale zapisuję sobie „ku pamięci”, bardzo dobry artykuł jak zainstalować program e-Deklaracje w systemie Linux, instalacja (na zasadzie sztuczek niestety!) – krok po kroku: http://nocnypingwin.pl/e-deklaracje-pod-linuxem-2017/.

Gdyby ktoś natomiast zastanawiał się, na co może przeznaczyć swój jeden procent podatku, a kręci go nauka i chciałby ją wesprzeć, oto lista moich kandydatów:

  • 1% Na Astronomię, czyli program Ciemne Niebo – popularyzacja astronomii i działania z zakresu ochrony ciemnego nieba (KRS 0000076686). Kiedyś już pisałam o fundacji Polaris przy okazji innej ich akcji.
  • Fundacja Sieci Obserwatorów Burz (KRS: 0000546557) – robią dobrą robotę, wystarczy zajrzeć na http://obserwatorzy.org/ 
  • Polskie Towarzystwo Rakietowe – popularyzacja nauki – tym razem rakiety amatorskie. (KRS: 0000355014)
  • Fundacja Wikimedia – myślę, że nikomu nie trzeba przestawiać, Wikipedię znają chyba wszyscy 🙂 (KRS: 0000244732)

Jaki program do zarządzania boot sectorem?

Chcę dziś polecić fantastyczny program narzędziowy – Easy BCD (BCD – Boot Configuration Data), program do zarządzania boot sectorem. Jest to aplikacja desktopowa, okienkowa, dedykowana dla systemu Microsoft Windows.

Program, mimo niewielkiej wagi, posiada wiele opcji konfiguracji rozruchu systemu, których długo trzeba byłoby szukać w opcjach Windowsa.

Jak to wygląda?

Parę screenów, demonstrujących, co w programie można zrobić:

EasyBCD1 - program do zarządzania boot sectorem

Czytaj dalej

Jak stworzyć mapę Google z punktów?

Jak szybko umieścić wiele punktów na mapie, np. Google Maps i stworzyć mapę Google z punktów za pomocą gotowego narzędzia?

Z pomocą może przyjść narzędzie online, GPS Visualizerhttp://www.gpsvisualizer.com/map_input

Jako plik wejściowy wystarczy podać plik z koordynatami. Przydatne, jeśli dysponujemy np. punktami z przebytej trasy z podręcznych urządzeń GPS nie posiadających opcji wizualizacji. Warstwa mapowa obejmuje wiele rodzajów map: Open Street, Google Maps itd. Jest więc z czego wybierać.

GPS Visualizer – pozwala szybko stworzyć mapę Google z punktów

Przykładowa wizualizacja punktów zawartych w pliku GPX z ZOO w St Louis:

Jak stworzyć mapę Google z punktów