Showing posts with label różne. Show all posts
Showing posts with label różne. Show all posts

24/12/2014

Życzenia świąteczne

Home

Kolejne Święta Bożego Narodzenia już tuż tuż. W tym roku czekam na nie jeszcze bardziej niż zwykle, bo to pierwsze wydarzenie tego rodzaju dla naszej córeczki. Wszystkim czytającym mojego bloga i nie tylko życzę dużo radości w gronie bliskich Im osób, a w Nowym Roku ciekawych wyzwań zawodowych oraz zapału do nauki i doskonalenia się.

Serdecznie Pozdrawiam,
Michał Komorowski

06/07/2014

1.25 biliona dolarów

Home

Niedawno przygotowując prezentację na temat debugger'ów historycznych i szukając informacji na temat kosztu naprawiania błędów natknąłem się na ciekawe badanie na ten temat. Prezentowane wyniki wydały mi się na tyle ciekawe, że postanowiłem się nimi z Wami podzielić.

Publikację, o której mowa, można znaleźć na portalu citiseerx, a tytułowe 1.25 biliona dolarów to według autorów tego opracowania globalny koszt wytwarzania oprogramowania na świecie. Co dla nas ciekawe, połowa z tej sumy przypada na pensje programistów, czyli bagatela 625 miliardów dolarów. Autorzy badania szacują również, ile z tego przypada na naprawianie błędów, właściwe programowanie..., ale nie o tym będę pisać.

Pozwolę sobie natomiast pociągnąć temat wynagrodzeń. Otóż, według IDC, estymowana liczba profesjonalnych programistów na świecie to 11 005 000. Z prostego dzielenia wynika więc, że globalnie uśredniona pensja programisty to 56 792 dolarów, co po aktualnym kursie daje 173 357 złotych, czyli średnio 14 446 złotych miesięcznie brutto.

Czy to dużo czy mało? Dla przeciętnego Kowalskiego zapewne bardzo dużo. Dla tych z nas, którzy tyle nie zarabiają, też będzie to sporo. Niektórzy powiedzą natomiast, że można zarabiać jeszcze więcej, a jakby dostać dobrą robotę za granicą, to ta suma wyda się mała. Należy też pamiętać, że te wyliczenia są uproszczone, a średnia to wrzucenie wszystkie do jednego wora. Wynik pokazuje jednak, że tak globalnie nie powinniśmy narzekać.

Na tą średnią można też spojrzeć inaczej. Truizmem będzie stwierdzenie, że otrzymana średnia dzieli programistów na tych co zarabiają mniej i na tych co zarabiają więcej. Odpowiadając jednak na pytanie, jak średnia pensja programisty w Polsce kształtuje się względem średniej globalnej uzyskamy przybliżoną informację o tym, czy pensje powinny rosnąć czy nie. Osobiście sądzę, że nasza lokalna średnia jest zauważalnie niższa, a więc jest pole do wzrostów. I tym optymistycznym stwierdzeniem zakończę.

PS.

Kiedy skończyłem pisać ten krótki artykuł zdałem sobie sprawę, że dokładam swoje 3 grosze do dyskusji, która rozgorzała po publikacji IT-arystokracja... na przykład na facebook'u czy blogach. Nie było to jednak zamierzone.

23/12/2013

Życzenia świąteczne

Home



Święta Bożego Narodzenia już za progiem i wielu z Was zapewne jest już na zasłużonym urlopie. Zanim i ja się "wyłączę", chcę Wam życzyć wszystkiego dobrego, chwili wytchnienia i wypoczynku w gronie bliskich Wam osób oraz żeby te Święta były jeszcze lepsze niż przed rokiem. Na Nowy Rok życzę natomiast suckesów, ciekawych wyzwań oraz, po części również sobie, wielu ciekawych treści na blogu.

Michał Komorowski

01/12/2013

Długość hasła do konta Microsoft

Home

Niektóre decyzje giganta z Redmond podobają mi się, inne mniej, a niektóre w ogóle. Pół biedy kiedy kryje się za tym jakaś logika, ale niektórych rzeczy po prostu nie mogę zrozumieć. Ostatnio chciałem zmienić swoje hasło do konta Microsoft i niezmiernie się zdziwiłem kiedy okazało się, że moje hasło jest za długie gdyż miało więcej niż 16 znaków. WTF! W ogólności to nie nowa rzecz ale ja spotkałem się z nią pierwszy razo.

Na tym jednak nie koniec. Jakiś czas potem natknąłem się na to wytłumaczenie. Okazuje się, że hasła zawsze były ograniczone do 16 znaków, a jeśli wprowadzono dłuższy ciąg znaków to było to ignorowane. Teraz zamiast wydłużyć maksymalną dopuszczalną długość postanowiono nie pozwolić na wprowadzenie zbyt długich haseł, bo i po co użytkownik ma się męczyć i nadwyrężać pamięć.

Osobiście nie widzę żadnego "pozytywnego" argumentu za takim limitem na długość hasła. "negatywnym"  i moim zdaniem dość prawdopodobnym  argumentem może być to, że ileś lat temu podjęto błędną decyzję i odkręcenie tego teraz jest trudne i kosztowne.

Oczywiście Microsoft nie jest jedyną firmą, która narzuca "dziwne" ograniczenia na hasła. Tym niemniej jako firma o zasięgu globalnym, mająca setki milionów użytkowników, wypuszczająca rożnego rodzaju rekomendacje dotyczące bezpieczeństwa...  powinna zająć się również takimi podstawowymi rzeczami.

25/02/2013

Coursera

Home

Ponad rok temu pisałem o możliwości wzięcia udziału w kursach online dotyczących uczenia maszynowego czy baz danych prowadzonych przez Uniwersytet Stanforda. Kursy te okazały się strzałem w dziesiątkę i na przykład na ten dotyczący uczenia maszynowego zapisało się około 100 tysięcy osób!

Wracam do tego tematu ponieważ ostatnio kolega wspomniał mi o projekcie/firmie Coursera, która oferuje każdemu, bezpłatnie, możliwość wzięcia udziału w ponad 300 kursach online, z różnych dziedzin, które zostały przygotowane przez uczelnie z całego świata. Interesują cię kompilatory? A może gra na gitarze lub system monetarny Chin? Każdy powinien znaleźć coś dla siebie. Projekt dopinguję tym bardziej, że założycieli jest profesor nadzwyczajny z Uniwersytetu Stanforda Andrew Ng, który przygotował i poprowadził wspomniany kurs uczenia maszynowego.

Na bieżącą chwilę Coursera ma już 2 mln 700 tysięcy użytkowników. Nieźle jak na projekt, który wystartował niecały rok temu. W każdym razie uważam, że to wspaniała inicjatywa, tym bardziej warta docenienia, że daje dostęp do rzetelnej wiedzy za darmo, co w obecnych czasach jest coraz mniej oczywiste. Żeby tylko znaleźć na to czas ;)

16/02/2013

Co to jest dobre oprogramowanie?

Home

Pytanie jak powyżej pojawiło się w rozmowie w jakiej ostatnio uczestniczyłem. Każdy z nas ma na pewno swoje zdanie na temat cech, które powinien posiadać dobry program/system. Nie inaczej było w tym przypadku i padło wiele odpowiedzi. Po bliższym przyjrzeniu się, okazało się jednak, że odpowiedzi te można pogrupować w raptem cztery kategorie, co było dla mnie pewnym zaskoczeniem. Dodam, że w rozmowie uczestniczyło pięć osób, wszystkie techniczne, ale o różnym doświadczeniu, które pracowały przy różnych projektach i w różnych firmach. Te cztery kategorie to począwszy od najpopularniejszej:
  • Program/system powinien być łatwy oraz tani w utrzymaniu i rozwoju. Do tej kategorii można wrzucić bardzo wiele rzeczy: odpowiednia architektura, obecność testów jednostkowych, dobra dokumentacja wymagań, stosowanie wzorców projektowych itd. Pojawienie się tej kategorii jednoznacznie wskazuje na programistyczny background osób biorących udział w rozmowie.
  • Program/system powinien spełniać wymagania i oczekiwania klienta, rozwiązywać jego problemy.
  • Program/system powinien spełniać wymagania i oczekiwania użytkownika, być ergonomiczny i łatwy w użyciu. Kategoria ta może wydawać się podobna do drugiej kategorii, ale kładzie nacisk na użytkownika końcowego, który w wielu przypadkach nie jest tożsamy z zamawiającym oprogramowanie (klientem).
  • Program/system powinien przynosić firmie tworzącej oprogramowanie zyski, dobrze się sprzedawać. Bez tego też nie da się obejść. Nawet jeśli oprogramowanie zostało napisane z zachowaniem wszystkich zasad i jest cudeńkiem inżynierii, ale się nie sprzedaje, to nie można nazwać go dobrym.
Sądzę, że zestawienie to, pomimo, że krótkie, jest kompletne. Udało się w nim uchwycić interesy różnych grup ludzi, którzy uczestniczą w przedsięwzięciu informatycznym czyli: firmy informatycznej, zespołu tworzącego produkt, klienta/firmy zamawiającej oraz użytkowników końcowych. Interesy tych czterech grup są nierzadko ze sobą sprzeczne ale dopiero kompromis pomiędzy nimi pozwala stworzyć naprawdę dobry system informatyczny.

Po zakończeniu tego posta zacząłem się zastanawiać ile projektów, o których słyszałem, rozmawiałem lub przy których pracowałem spełnia powyższe wymagania. W większości przypadków, które przyszły mi do głowy, mogę gdzieś wsadzić szpilkę. A to system co prawda przynosi kupę kasy ale jest napisany w taki sposób, że woła o pomstę do nieba... Inny z kolei to kawał dobrej programistycznej roboty, ale z jego urynkowieniem jest już gorzej... O wiele łatwiej jest mi znaleźć oprogramowanie wystarczająco dobre, czyli spełniające tylko niektóre z tych wymagań.

A jakie są Wasze doświadczenia?

24/06/2012

Informatyka w służbie medycyny ;)

Home

Nie wiem jak większość z Was, ale ja na co dzień, jako programista agenta transferowego dla dużych instytucji finansowych, nie mam okazji obserwować jak wynik moich wysiłków przekłada się na pracę klienta. Sądzę, że nie jestem odosobniony i w mniejszym lub większym stopniu doświadcza tego każdy kto pracuje nad projektami przeznaczonymi dla dużych firm i korporacji. Z tego powodu lubię wykorzystywać swoje umiejętności i pomagać przyjaciołom i rodzinie.

Ostatnio moja szwagierka, która jest na specjalizacji z anestezjologii, spytała czy pomógłbym jej zautomatyzować papierkową robotę związaną ze specjalizacją. Papierologia ta przejawia się tym, że dla każdego zabiegu w jakim uczestniczy musi wypełnić odpowiedni formularz. Zabiegów takich w ciągu całego stażu musi wykonać, o ile mnie pamięć nie myli, około 2 tyś. Oznacza to konieczność wypełnienia i wydrukowania takiej samej liczby formularzy i dodatkowego zestawienia podsumowującego.

Wzór formularz przygotowała sobie sama w Excelu. Początkowe kilkadziesiąt kart wypełniła ręcznie. Robota łatwa ale żmudna i zawsze łatwo o pomyłkę. Dodatkowo ciężko potem przeglądać dużą liczbę takich kart i wyszukać tą, która nas w danej chwili interesuje. Formularz wygląda w następujący sposób:



Do tego informację o każdej takiej karcie zapisuje się w zestawieniu podsumowującym. Pomysł na automatyzację był następujący: "Chciałabym mieć arkusz w programie Excel z kolumnami, w które wpisywałabym informacje potrzebne do wypełnienia kart i zestawienia podsumowującego. Na tych kolumnach założę sobie filtry itp. Z arkusza tego generowane będę karty oraz zestawienie podsumowujące."

Zrobienie czegoś takiego nie jest trudne ale wymaga umiejętności pisania makr. Z chęcią przystąpiłem więc do pracy. Jedno popołudnie i nowe rozwiązanie było gotowe. Składa się na nie:
  • Arkusz z wzorem formularza. Z tego arkusza wzór jest kopiowany i wypełniany.
  • Arkusz z danymi. Każdy wiersz odpowiada jednemu formularzowi. Aby za każdym razem nie generować wszystkich kart zawiera dodatkową kolumnę ze znacznikiem czy już generowano daną kartę.
  • Arkusz z podsumowaniem.
  • Arkusz z wygenerowanymi kartami.
  • Skrypt (140 linii) generujący podsumowanie i karty, uruchamiany kombinacją klawiszy Ctrl+G.
Coś bardzo prostego, chwila wysiłku, ale sporo satysfakcji.

24/12/2011

Życzenia świąteczne

Home



Z okazji Świąt Bożego Narodzenia życzę czytelnikom i czytelniczkom wszystkiego dobrego, żeby najbliższe dni spędzili w wymarzony sobie sposób, z bliskimi sobie ludźmi, a w nowym roku pomyślności i wielu ciekawych wpisów na tym blogu :)

Serdecznie pozdrawiam,
Michał Komorowski

13/09/2011

Okazja do wzięcia udziału w ciekawych kursach

Home

Uniwersytet Stanforda organizuje zdalne kursy poświęcone uczeniu maszyn (ang. machine learning), sztucznej inteligencji oraz bazom danych. Zajęcia są bezpłatne i zaczynają się w październiku, a potrwają do grudnia. Kursy składają się nie tylko z wykładów, ale również z rożnych zadań do rozwiązania, będzie można również zadawać pytania. Moim zdaniem to wspaniała okazja, aby zdobyć albo odświeżyć dużo cennej wiedzy. Na każdy z tych wykładów zapisało się już ponad 50 tysięcy osób!

21/02/2011

Domeny globalne

Home

Od kilku miesięcy jestem szczęśliwym posiadaczem własnej domeny michalkomorowski.com. Jakiś czas temu moje szczęście zostało jednak zakłócone kiedy dowiedziałem się, że usługa whois udostępnia publiczne moje pełne dane adresowe!!! Szybko skontaktowałem się z firmą home.pl, za pośrednictwem której wykupiłem domenę aby wyjaśnić sprawę.

Co tu dużo mówić byłem nastawiony wojowniczo ale mój zapał został szybko zgaszony. Otóż okazało się, że dla domen globalnych dane właścicieli są domyślnie jawne. Wymaganie takie stawia rejestratorom organizacja ICANN czyli główny zarządca domen na świecie. W regulaminie znajduje się oczywiście stosowny punkt, który przeoczyłem przeglądając umowę. Szczęście w nieszczęściu aby ukryć dane wystarczy wypełnić elektroniczny formularz. Po jego wypełnieniu moje dane zostały ukryte w ciągu 24 godzin, tutaj plus dla home.pl za szybką reakcję.

Z drugiej strony sądzę, że w dobrym tonie byłoby gdyby firmy zajmujące się rejestracją domen informowały o takich rzeczach przy pomocy dużego czerwonego napisu ponieważ sprawa nie jest oczywista. Z ciekawości sprawdziłem kilka domen globalnych dla polskich blogów i dla większości z nich wynik zwrócony przez usługę whois, zawierał dane adresowe właścicieli. Może sie mylę ale z dużą pewnością ich autorzy oraz wielu innych nie zdaje sobie z tego sprawy.

24/12/2010

Życzenia świąteczne

Home

Z okazji Świąt Bożego Narodzenia składam czytelnikom i czytelniczkom bloga serdeczne życzenia wszystkiego najlepszego oraz wybiegając trochę w przyszłość życzę dużo szczęścia i pomyślności w nadchodzącym nowym roku.

Pozdrawiam
Michał Komorowski

17/11/2010

100 postów

Home

Niby 100 to liczba jak każda inna ale jednak ponad 100 opublikowanych postów skłoniło mnie do spojrzenia wstecz i napisania krótkiego podsumowania. Należy zacząć od tego, że napisanie takiej liczby postów zajęło mi 2 lata co daje średnio 4 posty w miesiącu. Mało to czy dużo? Dla mnie w sam raz. Były okresy, w których publikowałem więcej i takie, w których pojawiał się jeden post w miesiącu. Poruszałem różne tematy, głównie związane z platformą .NET i nowoczesnymi technologiami ale pojawiły się również posty związane z grami komputerowymi, mini recenzje sztuk teatralnych czy na temat inicjatywy Powrót do Ojczyzny. Zawsze starałem się aby to co piszę było dla innych w jakiś sposób wartościowe. Nie mi to oceniać ale wierzę, że mi się udało.

Co zrobiłem w ciągu 2 lat?

W tym czasie blog ewaluował i zmieniał się, domyślny szablon dostosowałem do swoich potrzeb i gustu, dodałem podświetlanie składni przy pomocy syntaxhighlighter'a, chmurę etykiet, QR kod z zakodowanym moim adresem e-mail, sekcję Aktualnie czytam, stopkę z informacją o prawach autorskich, licznik subskrypcji ... by w końcu osiągnąć obecną, odpowiadającą mi w prawie 100% formę. Nauczyłem się jak pisać i redagować posty oraz, że każdy post przed opublikowaniem należy odłożyć i wrócić do niego za kilka godzin lub najlepiej następnego dnia w celu ponownego sprawdzenia. Nieoceniony jest, że kiedy wpiszę w Google swoje imię i nazwisko to mój blog pokazywany jest na jednym z pierwszych miejsc. Moje wpisy pojawiają się wśród pierwszej 10 wyników po wpisaniu takich haseł jak: IntelliTrace, blog programowanie czy visual studio blog (stan na moment pisania tego postu). Linki to mojego bloga można również znaleźć w serwisach dotnetmaniak, dotnetblogs czy dotnetnews. Nie jestem już, więc anonimowy w sieci, a co najważniejsze pokazałem się z dobrej strony, a to było jednym z moich celów kiedy zaczynałem blogowanie.

Co dalej?

Co tu ukrywać blogowanie spodobało mi się. W przyszłości chciałbym przynajmniej utrzymać, a najlepiej zwiększyć średnią 4 postów w miesiącu, oczywiście bez obniżenia poziomu. Będę również starał się zdobyć więcej czytelników i pobudzić ich do komentowania. Po głowie chodzą mi również takie pomysły jak przejście z bloggera na platformę WordPress czy artykuły dwujęzyczne (Pl/En).

Jeśli ktoś z Was ma dla mnie jakieś rady lub uwagi, coś mu się w tym blogu nie podoba albo odwrotnie coś mu przypadło do gustu, a może chciałby więcej lub mniej wpisów na jakiś temat i powinny być dłuższe lub krótsze... to z przyjemnością wysłucham wszystkich głosów.

23/09/2010

QR kody

Home

QR kod to dwuwymiarowy odpowiednik kodu kreskowego, który ostatnimi czasy staje się coraz popularniejszy. I ja o nim coś tam słyszałem ale do tej pory jakoś nie miałem z nim styczności, aż do dzisiaj.

Szukałem w sieci informacji na temat poleconego stomatologa. Znalazłem je na portalu tupalo czyli numer telefonu, adres, mapkę dojazdu no i jakiś dziwny czarno-biały obrazek. Przyglądam się i czytam, że to QR kod zawierający dane kontaktowe do rzeczonego specjalisty i wystarczy je zeskanować, żeby dodać kontakt do książki adresowej. Myślę sobie super ale ciekawe czy mój Samsung Galaxy GT-I5700 to potrafi. Okazało się, że jak najbardziej tak i już po chwili miałem zainstalowane dwie aplikacji QuickMark oraz BarcodeScanner do skanowania kodów dwu- i jednowymiarowych.

Najpierw przetestowałem skanowanie kodu jednowymiarowego czyli w moim wypadku kodu kreskowego na pierwszej lepszej książce. Wynik pozytywny, numer jaki pojawił się w telefonie zgadza się z numerem pod kodem kreskowym. Dalej coś trudniejszego. Skanuję QR kod wyświetlony na stronie i również sukces, zostaję zapytany czy dodać taki, a taki kontakt do telefonu. Postanawiam kontynuować zabawę i znajduję generator online QR kodów. Poniżej przykład jego działania, czy potrafisz go odczytać?



W postaci QR kodu zakodowałem również swój adres e-mail i umieściłem w lewym panelu bloga, może komuś się przyda. Zabawa, zabawą ale biorąc pod uwagę, że teraz właściwie już każdy posiada telefon komórkowy, bardzo dużo telefon komórkowy z aparatem fotograficznym, a spora grupa telefony, na których z łatwością można instalować nowe oprogramowanie to na rynku pojawia się (albo już sie pojawiła) nowa nisza do zagospodarowania.

14/09/2010

Powrót do Ojczyzny

Home

Powrót do Ojczyzny to nazwa inicjatywy na rzecz ustawy o powrocie do Polski osób deportowanych lub zesłanych za czasów ZSRR. Jeszcze kilka dni temu nie wiedziałem, że taki ruch obywatelski istnieje i niewiele brakowało, a nie złożyłbym swojego podpisu pod projektem ustawy, a potrzeba ich 100 tysięcy aby trafił do sejmu. Do 14 września czyli ostatniego dnia trwania akcji zebrano 93480 głosów czyli bardzo dużo ale niestety za mało. Nowa ustawa jest ważna ponieważ przy obecnych rozwiązaniach prawnych czas oczekiwania na powrót do Polski może sięgać nawet 7-10 lata.

O akcji dowiedziałem się od żony, która zaproponowała, że po pracy przejdziemy się na Krakowskie Przedmieście 64 i złożymy podpisy. Podpis można było oczywiście wysłać pocztą ale nawet polecony nie zostałby doręczony w tak krótkim czasie. Wysiłek nieduży, a można komuś pomóc. Przy okazji postanowiłem spytać kolegów z pracy czy chcą złożyć podpis i w ciągu 2 godzin uzyskałem dodatkowe 12 głosów! Na Krakowskie Przedmieście spotkałem jeszcze sporą grupę ludzi myślących podobnie, część tak jak ja przyniosła listy z podpisami, inni przyszli się podpisać.

Jeśli ustawa wejdzie w życie będzie oczywiście kosztować. Według projektu ustawy potrzebnych będzie rocznie ok. 100 mln. Tu duże pieniądze ale ja wolę aby moje podatki były przeznaczane na takie szczytne rzeczy niż na ... i tutaj każdy może wpisać wiele pozycji w budżecie, które przejadają nasze pieniądze.

A teraz trzymam zaciśnięte kciuki żeby starczyło podpisów, okaże się jutro rano.

20/07/2010

Android 2.1

Home

Pierwszy post po długiej przerwie spowodowanej urlopem :) będzie trochę z innej beczki niż zwykle, a będzie dotyczył aktualizacji systemu Android do wersji 2.1 na telefonie Samsung Galaxy GT-I5700. Postanowiłem o tym napisać ponieważ spędziłem nad tym trochę czasu, na różnych forach można znaleźć sporo pytań o to, a okazało się, że sprawa jest dość prosta. Ja napotkałem dwa główne problemy:
  • Problem z wykryciem telefonu, po podłączeniu go do komputera przez kabel USB, przez oprogramowanie Samsung PC Studio.
  • Zawieszenie się telefonu w czasie aktualizacji.
Pierwszy problem rozwiązuje się właściwie sam. Jakiś czas temu pojawiła się aktualizacja aplikacji Samsung PC Studio. Po uruchomieniu programu otrzymamy komunikat z informacją o możliwość pobrania i zainstalowania uaktualnienia. Po zakończeniu procesu problem z wykrywaniem telefonu powinien zniknąć (u mnie ustąpił). Jeśli PC Studio cały czas uparcie nie widzi telefonu należy sprawdzić czy telefon ma włączone Debugowanie USB. Opcję tą znajdziemy tutaj: Ustawienia -> Aplikacje -> Programowanie -> Debugowanie USB.

Drugi problem polegał na tym, że po rozpoczęciu aktualizacji telefon w pewnym momencie wyłączył się, a przy ponownym uruchomieniu zawiesił na czarnym ekranie z napisem Samsung. Po przeczekaniu kilkunastu minut straciłem cierpliwość i odłączyłem (wbrew zaleceniom) telefon od komputera oraz go wyłączyłem wyjmując baterie (również niezalecane). Kolejne uruchomieniu telefonu odbyło się szczęśliwie bez kłopotów ale system oczywiście nie został uaktualniony.

Po chwili przypomniałem sobie, że używam dobrze znanej wielu osobom aplikacji APNdroid dzięki, której telefon nie połączy sie z netem poprzez sieci 2G/3G/EDGE bez naszej wiedzy (tak na marginesie polecam). Standardowo dostęp do sieci mam wyłączony i miałem niejasne przeczucie, że tutaj tkwi rozwiązanie problemu. Moje przeczucie okazało się trafne. Po włączeniu dostępu do sieci 2G/3G/EDGE i ponownym rozpoczęciu procesu aktualizacji wszystko się udało.

Na zakończenie kilka uwag. Przed rozpoczęciem aktualizacji warto wykonać kopię zapasową danych na telefonie. Pytanie o to czy chcemy wykonać taką kopię pojawi się w kreatorze aktualizacji. Po drugie zwracam uwagę, że odłączania telefonu od komputera w czasie aktualizacji jest niebezpieczne i może doprowadzić do utraty danych lub uszkodzenia telefonu. Ja byłem zmuszony to zrobić i się udało ale w żadnym stopniu nie zalecam powielania tej procedury. Najlepiej zrobić wszystko od początku do końca prawidłowo :) Na koniec przypominam, że po wykonaniu aktualizacji nie będzie już można korzystać z PC Studio do komunikacji z telefonem. Zamiast tej aplikacji należy pobrać nową o nazwie KIES

23/12/2009

Życzenie świąteczne

Home

Wszystkim czytelnikom i czytelniczkom składam życzenia wesołych i radosnych Świąt Bożego Narodzenia.

Serdecznie pozdrawiam
Michał Komorowski

04/09/2009

Trochę na temat oferty ESRI

Home

Tak jak obiecałem w ostatnim poście teraz poświęcę trochę czasu na omówienie oferty firmy ESRI, która dla kogoś nie związanego na co dzień z GIS'ami może wydać się niezrozumiała i zagmatwana i taka mówiąc szczerze jest. Sądzę, że takie zestawienie może być ciekawe i przydatne dla kogoś stawiającego pierwsze kroki w świecie geograficznych systemów informacyjnych (wiem to z własnego doświadczenie) i nie tylko. A więc zaczynamy.

Po pierwsze wyróżnijmy dwie kategorie produktów. W pierwszej umieścimy gotowe, pudełkowo aplikacje, a w drugiej rozwiązania przeznaczone dla programistów. W pierwszej znajdziemy:
  • ArcGIS Desktop. Flagowa aplikacja, a raczej zestaw aplikacji ESRI pozwalających na przeglądanie i analizowanie zgromadzonych danych geograficznych, zarządzanie nimi, edytowanie, tworzenie i tysiące innych rzeczy. Najważniejsze składowe pakietu ArcGIS Desktop to aplikacja administracyjna ArcCatalog, właściwa aplikacja do oglądania i przetwarzania danych czyli ArcMap oraz ArcGlobe służąca do pracy z danymi trójwymiarowymi. W obecnej chwili ArcGIS Desktop dostępne jest w trzech wersjach różniących się między sobą zakresem funkcjonalności. Są to odpowiednio: ArcView, ArcEditor oraz ArcInfo.


  • ArcView. To nie tylko nazwa jednej z wersji ArcGIS Desktop ale również nazwa starej aplikacji będącej w prostej linii jej poprzedniczką.


  • ArcGIS Server. Dedykowany do zastosowań GIS'owych serwer aplikacyjny. Dostarcza bogaty zestaw usług webowych takich jak: geokodowanie, lokalizowanie... oraz umożliwia tworzenie własnych. Pozwala na publikowania w sieci danych geograficznych oraz zawiera kilka platform do tworzenia mapowych aplikacji WWW i mobilnych. ArcGIS Server sprzedawany jest w wersjach: Basic, Standard oraz Enterprise. ESRI stworzyła również zestaw specjalizowanych rozszerzeń dla serwera np.: do analiz i modelowania 3D.


  • ArcPad. Dedykowana dla urządzeń mobilnych aplikacja o dużych możliwościach konfiguracyjnych pozwalających na dostosowanie do konkretnych potrzeb. Również aplikacja wykonująca synchronizację pomiędzy urządzeniem mobilnych, a centralną bazą danych.


  • ArcSDE. Nakładka na relacyjną bazę danych, uruchamiana jako usługa, umożliwiająca przechowywanie w niej danych przestrzennych.


  • ArcGIS Explorer. Prosty klient dla ArcGIS Server umożliwiający przeglądanie danych geograficznych dostępnych w sieci, na przykład w serwisie ArcGIS Online. Ta aplikacja jest w całości darmowa.


  • ArcReader. Aplikacja o podobnej funckjonalności co ArcGIS Explorer ale służąca do przeglądania danych przestrzennych stworzonych w ArcGIS Desktop i opublikowanych przy pomocy aplikacji ArcPublisher. Również darmowa.


  • ArcIMS. W pewnym uproszczeniu poprzednik ArcGIS Server. ESRI zaleca użycie następcy.


  • ArcGIS for AutoCAD. Darmowe narzędzia zapewniające interoperacyjność pomiędzy rozwiązaniami ESRI i AutoCAD.


  • ArcPublisher. Rozszerzenie ArcGIS Desktop o możliwość publikowania map w sieci.
Ofertę dla developerów tworzą natomiast:
  • MapObjects. Stare API programistyczne umożliwiające tworzenie okienkowych aplikacji mapowych. Technologia używana coraz rzadziej.


  • ArcObjects. Zestaw komponentów COM w oparciu, o które zostały stworzone prawie wszystkie produkty z oferty ESRI: ArcGIS Desktop
  • , ArcGIS Server, ArcGIS Engine itd.

  • ArcGIS Engine. Platforma programistyczna (COM, .NET, Java i C++) oparta o ArcObjects służąca tworzeniu aplikacji okienkowych oraz do dostosowywania aplikacji z pakietu ArcGIS Desktop do swoich potrzeb.


  • ArcGIS Mobile. Platforma programistyczna (C#, Java) do tworzenia aplikacji mobilnych sprzedawana razem z ArcGIS Server w wersji Enterprise.


  • Web ADF (Application Development Framework). Platforma programistyczna do tworzenia aplikacji WWW sprzedawana razem z ArcGIS Server w wersji Standard. Dostępna dla .NET i Java . W przypadku .NET oparta oczywiście o ASP.NET Ajax.


  • ArcGIS Web Mapping APIs. Zestaw interfejsów programistycznych/bibliotek do tworzenia aplikacji mapowych w WPF/Silverlight, JavaScript i Flex darmowych do niekomercyjnego użytku. W porównaniu do Web ADF ma bardzo ograniczone możliwości.
Przegląd ten pomimo, że dość długi nie jest kompletny. Zawiera jednak większość, a z pewnością najważniejsze z produktów z oferty firmy ESRI. Można również spierać się co do użytego przeze mnie podziału. Z mojego doświadczenie wynika jednak, że z tej gromady Arc'ów może być trudno wyłowić to co jest przydatne dla programisty.

03/09/2009

ESRI WPF/Silverlight API

Home

ESRI to lider światowego rynku systemów informacji geograficznej (ang. GIS). Lider przez duże L - Na całym świecie z rozwiązań ESRI korzysta 300 tyś instytucji w tym 2/3 firm z listy Fortune. ESRI to taki Microsoft w świecie GIS'ów :). Czym jednak są systemy GIS'owe?

GIS to w bardzo dużym skrócie system służący do wprowadzania, przechowywania, przetwarzania, analizowania i wizualizowania danych przestrzennych. Upraszczając jeszcze bardziej, a wręcz trywializując chodzi tu po prostu o mapę ;) Niektórzy zapewne pomyślą coś w rodzaju: "Czym ty zawracasz głowę człowieku, przecież jest już Google Maps". Nie obrażając nikogo Google Maps w porównaniu z produktami ESRI to zabawka dla dzieci, którą poważni ludzie się nie zajmują. Patrząc na to z innej strony oferta ESRI (w jednym z kolejnych postów postaram się ją przybliżyć) jest dużo, dużo, dużo bogatsza. Poza tym jest skierowana do zupełnie innego rodzaju odbiorców, którzy poza wizualizacją danych geograficznych chcą je analizować i przetwarzać w celu usprawnienia swoich procesów biznesowych.

Czemu jednak w ogóle o tym piszę? Otóż rozwiązania ESRI są generalnie bardzo drogie i dostępnie dla niewielkiego grona specjalistów, a co z tym związane mało znane. Ostatnio dotarłem jednak do darmowego (dla celów niekomercyjnych) API dla WPF/Silverlight umożliwiającego tworzenie całkiem fajnych aplikacji. Tworzone aplikacje możemy zasilić danymi udostępnianymi przez ESRI poprzez ArcGIS Online. Zasoby udostępnione publicznie nie są tak duże jak w przypadku Google ale można już coś zdziałać przy ich pomocy. Możliwe jest również wykorzystanie map publikowanych przez Microsoft na Bing Maps.

Potrzebne biblioteki można pobrać tutaj, a dokumentację znajdziemy tutaj. Początkowo chciałem opisać prosty przykład użycia ale zrezygnowałem z tego kiedy zobaczyłem tą stronę. Znajdziecie tam kilkanaście bardzo prostych, poglądowych aplikacji. Polecam.

07/05/2009

"Autentykacja" - Czy takie słowo istnieje?

Home

Nie jestem purystą językowym ale niektóre rzeczy mi przeszkadzają i uważam, że powinno się mówić, a szczególnie pisać po polsku, a nie po "polskiemu". Właśnie jestem po lekturze kilku dokumentów dotyczących bezpieczeństwa, zarządzania użytkownikami oraz uprawnieniami, w których nagminnie używano słowa autentykacja. Niby wiadomo, że chodzi o proces uwierzytelniania (ang. authentication) ale takiego słowa nie ma po prostu w języku polskim. Jeśli ktoś nie wierzy to zapraszam do słownika języka polskiego, dostępny również on-line. Pół biedy kiedy używamy tego sformułowania w luźnej rozmowie ale słowo pisane jest bardziej wrażliwe na takie neologizmy, dziwne sformułowania itd.

28/04/2009

Słów kilka o terminologii

Home

Ostatnio odniosłem wrażenie, że jest spora grupa osób, która dość niechlujnie używa terminów szyfrowanie (deszyfrowanie) i kodowanie (dekodowanie). Prowadzić to może natomiast do niezrozumienia u rozmówcy lub czytelnika.

Kodowanie to proces przekształcenie danych wejściowych do innej, bardziej pożądanej i użytecznej w danym kontekście postaci. W jednym przypadku użyteczne będą to dane skompresowane, w innym zapisane przy użyciu odmiennego alfabetu, a w jeszcze innym zaszyfrowane. Zgadza się, szyfrowanie jest specyficzną formą kodowania. Podstawowa różnica pomiędzy szyfrowaniem, a innymi formami kodowania polega natomiast na tym, że szyfrowanie wymaga podania klucza. Zarówno w przypadku innych form kodowania jak i szyfrowania algorytm może być dobrze znany i dostępny publicznie. Tylko, że nie znając klucza, a znając algorytm szyfrujący nie zdziałamy dużo. Pomijam tutaj sytuację kiedy algorytm został skompromitowany (złamany) lub kiedy użyty klucz jest zbyt słaby, łatwy do odgadnięcia.

Pojęcie kodowania jest, więc bardzo ogólne. Podsumowując mówiąc - te dane są zakodowane - tak naprawdę nie przekazujemy żadnej informacji, a już na pewno nie o tym, że dane zostały zaszyfrowane - utajnione.