Archive for the ‘Narzędzia programisty’ Category

Google Developer Day 2011 na gorąco

20 Listopad 2011

W sobotę, 19 listopada 2011, byłem na konferencji Google Developer Day 2011 w Berlinie.

Wstęp

Było warto pojechać, choć dowiedziałem się mniej niż rok wcześniej w Monachium na GDD 2010.

Wykład otwierający rozpoczął się powitaniem deweloperów oraz prezentacją berlińskich uczelni (współorganizatorów GDD).

Potem nastąpiła seria prezentacji nt. nowości od Google (Android 4.0, nowości w GAE, nowe API).

Poniżej krótkie podsumowanie sesji które widziałem (i jednej której nie było).

Making Your Web Apps Accessible Using HTML5 and ChromeVox

Mike opowiadał o tworzeniu stron i aplikacji webowych dostępnych dla osób z upośledzeniami (niewidomych, z ograniczonym widzeniem i takich które z różnych powodów nie mogą korzystać z myszki).

Wszystko ilustrował przykładami z użyciem wbudowanego w Google Chrome screen readera Chrome Vox.

Parę zanotowanych myśli:

  1. Jeżeli używasz tabel to jesteś na złej konferencji.
  2. Bądź leniwy – użyj właściwych elementów.
  3. Użyj ARIA rules jeżeli potrzebujesz.
  4. Pierwszy krok ku testom dostępności – odłącz mysz i sprawdź, czy możesz nadal pracować.
  5. Zapewnij nawigację klawiaturą.

Dla zainteresowanych — slajdy użyte podczas prezentacji.

Google App Engine Overview & Update

Sesja poświęcona była Google App Engine (GAE) – platformie oferowanej przez Google do uruchamiania własnych aplikacji napisanych z wykorzystaniem Pythona, Javy lub Go.

Parę zanotowanych myśli:

  1. Google dostarcza plugin do Eclipse. Istnieje też wsparcie dla NetBeans i Idea.
  2. GAE oferuje możliwość cofnięcia wersji dostępnej produkcyjnie od poprzedniej wersji (a nawet do 10 wersji w wstecz).
  3. Z GAE można uruchamiać aplikacje Django.
  4. Aplikacje używające ORM Django lub standardów JDO/JPA mogą działać zarówno na GAE jak i w innym środowisku (czyli można je łatwo wycofać z GAE).
  5. Chcesz płacić mniej – zoptymalizuj swoją aplikację.

Slajdy które widziałem były bardzo podobne do tych dostępnych tutaj.

Sam w ramach ostrzenia mojej piły tworzę aplikację ebook deals for developers. Środowisko jej miłe w obsłudze, można się wiele nauczyć i łatwo udostępnić aplikację bez ponoszenia kosztów hostowania aplikacji.

Bleeding Edge HTML5

Sesja była poświęcona ,,najnowszym nowościom’’ w Google Chrome.

Było parę fajnych demo, gorzej z praktycznym wykorzystaniem pokazanych nowości, bo są one dostępne właściwie tylko w Google Chrome :(.

Za to obiecująco wyglądają web intents.

Slajdy użyte podczas sesji Bleeding Edge HTML5.

Trzy kolejne sesje

Sesja Go on App Engine nie odbyła się (prowadzący po krótkich poszukiwaniach odnalazł się w Australii) –- szkoda :(.

Na sesji  Dart: a new programming language for structured web programming niewiele nowego się dowiedziałem — ale miałem kryzys skupienia i mogłem coś przespać :).

Google będzie promować Dart-a i obiecuje dbać o to aby był szybki. Na razie, obawiam się, to tylko zabawka w wersji alpha…

Paru następców JavaScriptu już mamy (choćby CoffeScript) – Dart jest pewnie lepszy, ale to nie znaczy, że wygra.

Sesja V8 Performance Tuning Tricks poświęcona optymalizacji JavaScriptu wykonywanego na V8 (silnik JavaScript wykorzystywany w Google Chrome) była ciekawa, ale głównie w akademickim tego słowa znaczeniu :). Było warto zobaczyć, ale przydatność w praktyce dla mnie — raczej średnia.

Dla mnie najciekawszą informacją było to, że V8 można uruchomić z linii poleceń (do wykorzystania z VIM-em i JSLint-em pod Ubuntu).

DevTools Tips and Tricks

Ostatni wykład. Było warto zobaczyć. Dowiedziałem się, że parę rzeczy, których mi brakowało w DevTools istnieje. Dowiedziałem się też o paru rzeczach dostępnych z konsoli DevTools:

  • $0 zwraca aktualnie wybrany/zaznaczony w drzewie DOM element.
  • copy() kopiuje wartość argumentu do schowka – np. gdy zaznaczonym elementem jest obrazek (element IMG) to copy($0.src) skopiuje ścieżkę obrazka do schowka.
  • Przydatne skróty klawiszowe (lista dostępna po naciśnięciu znaku ? na klawiaturze).

Slajdy z sesji Chrome Dev Tools Tips and Tricks.

Podsumowanie

Było warto pojechać. Nawet pomimo tego, że nowości było nie za wiele, a na paru wykładach liczyłem na więcej.

Narzędzia. WinSplit Revolution, czyli zarządzanie oknami w Windows

6 Lipiec 2009

Od dawna uważam, że dwa duże monitory (na dziś minimum to 19″) powinny być standardem na biurku programisty. Sam przez parę lat miałem taką konfigurację w domu — teraz mam jeden monitor, ale za to córki dwie :).

Do zalet pracy z dwoma monitorami chyba nie trzeba nikogo przekonywać — znacznie większe pole robocze, brak konieczności ciągłego przełączenia się pomiędzy parą okien (na przykład: dokumentacja/IDE, IDE w trybie debug/aplikacja czy nawet TweetDeck/przeglądarka WWW 🙂 ).

Niestety, praca z dwoma monitorami, a nawet jednym dużym, sprawia parę problemów podczas pracy z wieloma aplikacjami (oknami):

  1. Przenoszenie okien pomiędzy monitorami jest kłopotliwe — wymaga oderwania się od klawiatury, paru klików i skupienia podczas przenoszenia okna na drugi monitor.
  2. Podział pulpitu pomiędzy parę okien aplikacji — jeden duży monitor (np. 20″ — 1600×1200) może udawać dwa mniejsze (jak ma pivot) monitory 1200×800.

    Jednak ręczne ustalanie rozmiarów okien i przeciąganie ich we właściwe miejsce to droga przez mękę :(.

Na szczęście istnieje darmowe rozwiązanie tego problemu — aplikacja WinSplit Revolution. WinSplit to darmowa aplikacja pozwalająca na zarządzanie położeniem okien w systemie Windows przy pomocy klawiatury.

Nie będę jej opisywał w szczegółach — zrobił to już Jeff Atwood z Coding Horror.

Jeff jest także autorem prezentacji na stronie domowej WinSplit Revolution.

Oczywiście WinSplit to nie jedyne rozwiązanie. Zanim znalazłem WinSplit-a, używałem aplikacji SplitView.

Jednakże SplitView nie ma dla mnie obecnie żadnej przewagi nad WinSplit Revolution:

  • Ma mniejszą funkcjonalność,
  • Jest płatny,
  • Od stycznia 2009 wydaje się nie być rozwijany :(.

Każdemu kto pracuje z dwoma monitorami lub jednym dużym polecam WinSplit Revolution — naprawdę mocno ułatwia pracę.

Narzędzia. Enso, czyli konsola dla Windows

30 Czerwiec 2009

Czym jest Enso?

Enso Humanized to niezwykle użyteczna aplikacja ułatwiająca pracę w systemie Windows.

Sposób działania Enso najlepiej pokazuje prezentacja przygotowana przez twórców aplikacji. Zapraszam do obejrzenia!

W skrócie — Enso pozwala na wykonywanie wielu podstawowych operacji tylko przy pomocy klawiatury. Po po naciśnięciu klawisza CAPS LOCK (domyślnie — można to zmienić) pojawia się okno w którym możemy wpisać komendę.

Jak działa Enso?

Dzięki Enso można między innymi, choć nie tylko:

  • nawigować pomiędzy oknami lub zakładkami przeglądarki — komenda GO,
  • zamykać okna i zakładki — komenda CLOSE,
  • minimalizować (MAXIMIZE) i maksymalizować (MAXIMIZE) okna,
  • zamykać aplikacje — komenda QUIT,
  • uruchamiać programy, otwierać dokumenty i strony internetowe — komendy OPEN i OPEN WITH,
  • uruchamiać wyszukiwarkę Google — komenda GOOGLE,
  • prowadzić proste obliczenia — komenda CALC,
  • sterować odtwarzaczem multimediów — komendy PLAY, PAUSE, VOLUME UP, itp.

Enso można także nauczyć nowych komend dzięki komendzie LEARN AS.

Wady Enso

Enso ma też niestety też dwie wady.

Wersja 2.0 pozostała w stanie beta i nie jest zbyt stabilna. Da się z tym żyć, choćby z powodu braku dobrej alternatywy), choć zazwyczaj Enso zawodzi gdy jest najbardziej potrzebne.

Community-enso — wersja rozwijana przez społeczność open source, niestety, także ma tą wadę :(.

Druga wada to brak wersji dla systemu Linux.

Alternatywa dla Enso

Popularna alternatywa dla EnsoLaunchy obsługuje niestety tylko niewielką część funkcjonalności Enso — np. nie wiem jak w Launchy przełączać się pomiędzy oknami, czy sterować odtwarzaczem multimediów.

Wszystkich nieprzekonanych polecam raz jeszcze prezentację pokazującą Enso w działaniu.

Narzędzia. ClipX czyli jak zarządzać historią schowka w Windows

22 Czerwiec 2009

Każdy deweloper/programista ma swoje ulubione narzędzia — edytor tekstu, środowisko zintegrowane, manager plików czy system kontroli wersji — a przynajmniej mieć powinien :).

Z pomocą tych narzędzi tworzy kod. Kod tym lepszy, czym lepsze są narzędzia programisty i większa jego wiedza o tym jak tych narzędzi używać.

Ja też mam takie narzędzia. Jedno z nich to ClipX — darmowy manager schowka dla Microsoft Windows.

Ten mały program łata jedną z największych wad mechanizmu Copy & Paste w Windows — brak historii schowka i możliwości korzystania z poprzednich elementów schowka. Wady, z punktu widzenia programisty, ogromnej :).

Zalety ClipX to:

  • Łatwa integracja z Windows — prosty instalator, łatwo dostępna i przemyślana konfiguracja (klawisze skrótów, liczba i typ pamiętanych elementów).
  • Obsługa wszystkich aplikacji Windows. No prawie wszystkich, bo ClipX gryzie się z dodatkiem MZ-Tools do antycznego środowiska VB6.
  • Możliwość przechowywania kopii zapasowej kodu w schowku 🙂 — czyli łatwego odnalezienia na liście użytych elementów, fragmentów kodu z przed paru dni. Ta właściwość już nieraz bardzo ułatwiła mi życie.

Wszystkich, którzy jeszcze nie używają ClipX, zachęcam do spróbowania. Naprawdę warto!