środa, 25 lutego 2015

Python - projekty do wykorzystania...

Python jest dynamicznie typowanym obiektowym językiem programowania, łatwym w nauce. Wykorzystywać go można do tworzenia  oprogramowania o różnorakim zastosowaniu. 
Python rozprowadzony jest na otwartej licencji Python Software Foundation License umożliwiając także zastosowanie dla projektów komercyjnych.
W języku tym napisanych jest wiele gotowych bibliotek, jak i całe frameworki wspomagające pracę programisty. Jest językiem programowania aktywnie rozwijanym i posiada coraz szersze grono użytkowników.
Pythona można wykorzystać do tworzenia aplikacji serwisów internetowych, aplikacji deskopowych, aplikacji sieciowych oraz skryptów np. generujących zestawienia i raporty.
Pythona używają najwięksi: Google, Yahoo, Nokia, IBM czy NASA używają Pythona w swoich aplikacjach oraz projektach np. EventGhost, BitTorrent 
Wiele stron internetowych jest napisanych w Pythonie np. Youtube, Turntable.fm

Zastanówmy się teraz gdzie działa Python. Aplikacje napisane w Pythonie działają pod wieloma systemami: Windows, Linux/Unix, Mac OS X, OS/2, Amiga, czy smartphony Palma i Nokia. Jak widać potencjał języka tego jest ogromny ale chciałabym dodać, że dostępne są również implementacje Pythona w Javie (Jython), .Net (IronPython), C (CPython) oraz  Common Lisp (CLPython).

Oczywiście, żeby zacząć programować w tymże języku należy poszukać dobrych materiałów, mówiąc dobrych mam na myśli walory jakościowe. Jak już kilka razy wspominałam książki zawierające dużo stron często są na bakier z jakością.

Dzięki książce: "Python.Projekty do wykorzystania "- James O. Knowlton , dowiesz się jak przygotować swoje środowisko pracy i rozpocząć pracę z językiem. Na przykładach zawartych w książce zobaczysz jak wykorzystać potencjał języka do własnych celów.

 Spośród przykładów znajdziesz opis zagadnień takich jak:

  • Tworzenie systemu zarządzania testami
  • Tworzenie systemu gromadzenia opinii użytkowników
  •  Program testujący wydajność WWW
  •  Program do wykonywania migawek katalogów i plików

Najważniejsze jest to, że projekty zawarte w tej książce można  zastosować do własnych potrzeb, pozycja ta jest odpowiednia dla osób, które dopiero poznają Pythona jak i również dla zaawansowanych programistów.  Polecam !

"Python.Projekty do wykorzystania "- James O. Knowlton


Książkę  można znaleźć tutaj: LINK

wtorek, 24 lutego 2015

Może tak Grafika 3D?

W trakcie trwania studiów musimy się zmierzyć z przedmiotem jakim jest " Grafika i komunikacja człowiek-komputer", zaczynają nas przerażać wykłady i ćwiczenia. Oczywiście gdy czujemy na karku nadejście sesji a co się z tym łączy egzaminu z przedmiotu, za pewne najpierw szukamy materiałów " w necie" . Ale czasem oczywiście takie materiały nie są wystarczające, więc pozostaje nam poszukać odpowiedniej książki.  Znalezienie odpowiedniej książki do grafiki uważam za nie lada wyzwanie, bo wiadomo nie każda książka jest odpowiednia lub dobra jakościowo.
Oczywiście zajęcia z grafiki to nie tylko rozwiązywanie zadań ale również programowanie, tak więc szukając odpowiedniej książki natrafiłam na ciekawą nowość.

Przedmiotem tej książki jest OpenGL (Open Graphic Library), OpenGL jest interfejsem programistycznym, który służy do tworzenia aplikacji z grafiką 3D.  Zestaw funkcji składa się z 250 podstawowych wywołań, umożliwiając konstruowanie złożonych trójwymiarowych scen z figur geometrycznych.

W trakcie korzystania z pozycji poznasz:
  • sposoby tworzenia aplikacji korzystających z grafiki  3D tworzonej za pomocą OpenGL
  • metody programowania shaderów w GLSL
  • teoretyczne podstawy rachunku macierzy
  •  implementacje wektorów i macierzy
  • model oświetlenia Phonga
  • implementacje oświetlenia Phonga 
 Zaznaczam że przy korzystaniu z książki powinieneś znać podstawy programowania w języku C++, w tym programowania obiektowego jak i również podstawy programowania dla systemu Windows w środowisku Visual Studio.

"Grafika 3D czasu rzeczywistego" - autor Jacek Matulewski


Książka dostępna jest tutaj:LINK

poniedziałek, 9 lutego 2015

Java. Ćwiczenia zaawansowane...

Najlepszym sposobem na udoskonalenie Naszych umiejętności programistycznych jest przećwiczenie rozmaitych przypadków konkretnych zastosowań danego języka.
Kiedy poznałeś podstawy Java w stopniu dobrym ale zależy Ci na poznaniu szerszego spektrum możliwości, powinieneś koniecznie sięgnąć po tę książkę.

Java. Ćwiczenia zaawansowanie jest to pozycja w której znajdziesz zestaw około stu ćwiczeń dzięki, którym zrozumiesz takie zagadnienia, jak programowanie współbieżne i obsługa wątków, budowanie aplikacji wielowątkowych z interfejsem graficznym, nawiązywanie połączeń sieciowych, komunikacja sieciowa z użyciem protokołu wymiany danych, serwery wielowątkowe, współpraca z relacyjnymi bazami danych oraz obsługa zapytań SQL.

Dzięki tej książce nauczysz się:

  • Jak uruchamiać, przerywać i synchronizować wątki,
  • jak działają gniazda w Javie i gniazda serwerowe, 
  • jakich tajnik użyć do komunikacji się z bazą danych ,
  • jakie są sposoby obsługi zapytań w SQL.
 Tak więc jak widać jest to odpowiednia pozycja dla osób chcących nabyć wiedzę z programowania sieci oraz baz danych. Polecam...

 " Java. Ćwiczenia zaawansowane."  - autor Marcin Lis


Książka dostępna jest tutaj : LINK

środa, 4 lutego 2015

Podstawy SQL...

Żeby poznać dobrze SQL potrzebna nam będzie pozycja z dobrym wprowadzeniem praktycznym, jednym z lepszych odmian książek do nauki możemy wymienić np. zbiory ćwiczeń praktycznych. Zbiory takie zawierają opis zadania i rozwiązanie takowego zadania, rozwiązanie jest poprzedzone tłumaczeniem teoretycznym. Co jest dobre ponieważ czytelnik wie co robi i poco to robi, takim sposobem można w błyskawicznym tempie nabyć wiedze, potrzebną do dalszej pracy z bazami danych. Wiadomo robiąc aplikacje bazodanową bez znajomości podstawowych zapytań NIE zrobimy nawet poprawnie chociażby tabeli, która ma zawierać informacje z bazy.
Podsumowując BEZ znajomości SQL jedynie co będziemy mogli sobie zaprogramować ? Hmmm... jakiś kalkulator? Przecież nie będziemy całe życie programować kalkulatorów. Czasem warto poświęcić kilka złociszy na niezłe materiały...

Tak więc chciałabym polecić książkę, która przygotowuje całkowicie niedoświadczonego czytelnika do spotkania z bazą danych oraz jej instalacji oraz co najważniejsze omawia składnie najważniejszych poleceń SQL-a.
Wykonując serie kilkudziesięciu ćwiczeń, nauczysz się:

  • jak tworzyć tabele i dodawać nowe rekordy
  • jakie są sposoby tworzenia zapytań do bazy danych, w sposób prosty jak i bardziej skomplikowany...

Tak więc bardzo polecam...

"Podstawy SQL. Ćwiczenia praktyczne."-  autor Arkadiusz Jakubowski 


czwartek, 22 stycznia 2015

Wzorce projektowe...

No to po dłuższej nieobecności w kwestii recenzowania książek wracam pełna pomysłów oraz entuzjazmu. Na pierwszy ogień postanowiłam rzucić książkę o wzorcach projektowych, pewnie istnieją osoby, którzy nie podzielają moich opinii na temat książek wyżej wymienionych, ale wiadomo różne są gusta i guściki.

Projektowanie oprogramowania nie jest proste,jeżeli jednak przyjmiemy założenie, że  powinno ono nadawać się  do wielokrotnego użytku, staję się naprawdę bardzo skomplikowane.

Przy tworzeniu projektu najlepiej jest skorzystać z sprawdzonych rozwiązań, które były już wcześniej stosowane. Wtedy możemy być pewni tego, że oprogramowanie tworzone przez nas będzie spełniało wszelkie kryteria.
Szukając książki odpowiedniej wg. mnie do nauki wzorców projektowych NIE kierowałam się ilością stron ale jakością materiału, znalazłam pozycję w której są opisane najlepsze doświadczenia z obszaru programowania obiektowego, które opisane są w formie wzorców projektowych gotowych do natychmiastowego użycia.

W książce "Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku" opisano, czym są wzorce projektowe oraz w jaki sposób można je wykorzystywać tworząc oprogramowanie obiektowe. W pozycji tej można znaleźć studium przypadków, katalog wzorców projektowych, który jest podzielony na trzy kategorie: wzorce konstrukcyjne, strukturalne i operacyjne.

Także jeżeli chcesz  nauczyć się jak korzystać z wzorców projektowych oraz jak sprawnie ulepszać dokumentacje i  jakiego wzorca  użyć aby stworzyć oprogramowanie dobrej jakości musisz nabyć tą książkę. Bardzo polecam...

"Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku"- autorzy Erich Gamma Richard Helm, Ralph Johnson, John Vlissides

Książkę można znaleźć tutaj: LINK

sobota, 22 listopada 2014

Prawo krytykowania i blogerzy książkowi...

Przeglądając swój blog  stwierdziłam, że czas aby podejrzeć konkurencyjne blogi i tak  kilka postów dalej coś zwróciło moją uwagę. A mianowicie każdy bloger książkowy wychwala książki, które recenzuje czy osoby  tworzące swój  blog boją się po prostu skrytykować złe książki? Wiem, że mówiąc " złe książki" mogę niektórych zrazić ale źle napisana książka nie jest wyśmienitym kąskiem dla pasjonata literatury ( technicznej, klasycznej). Może czasem warto ostrzegać czytelnika przez wyrzuconą kasą w błoto. Patrząc na siebie ja jeszcze nie trafiłam na książkę tak kiepską żeby napisać o niej " Proszę państwa proszę tego nie kupować ponieważ za te pieniądze można sobie bluzkę kupić" . Czy blogerzy boją się odpowiedzialności za swoje posty ?
A jeżeli tak to jak  mogą żyć  z swoją moralnością, że ktoś wyrzucił pieniądze w błoto i teraz wyklina w niebiosa recenzenta, który dał ciała. Ja bym nie mogła...

niedziela, 9 listopada 2014

Relacja Code::dive...

Dnia 5 listopada miasto Wrocław stało się nieoficjalną europejską stolicą programistyczną, a mianowicie w dniu tym odbyła się konferencja programistyczna Code::dive.
W czasie tym do Wrocławia przybyło około 1700 osób z całej Europy aby uczestniczyć w tym bardzo ważnym dla programistów wydarzeniu.

Organizując konferencje organizatorzy chcieli stworzyć miejsce w którym pasjonaci programowania będą mogli wysłuchać ciekawych prelekcji, dzielić się swoimi doświadczeniami, a także rozwijać swoje umiejętności pod bacznym okiem największych sław w tej dziedzinie.


I uważam, że się to organizatorom udało, wykłady, które były zrealizowane  z dużym rozmachem i z dużą dozą humoru dziedzinowego. Prelegenci sprawili, że większość z słuchaczy  spojrzało optymistycznym okiem na swoją dalszą przyszłość w zawodzie programisty.
 Rejestracja uczestników zaczęła się około godziny 7  już przed tą godziną zaczęli się zbierać uczestnicy w celu uniknięcia kolejek przy rejestracji.



O godzinie 9.00 odbyło się powitanie uczestników konferencji, wszystkich powitał Pan Rafał Motriuk


Po powitaniu nadszedł czas na pierwszy wykład, odbywały  się one równoległe w dwóch salach. Trzeba było wybrać wykład zgodnie z zainteresowaniami. Rozpoczął Pan Andrzej Krzemieński ze swoim " Seeing the Bigger Picture".


Po zakończeniu mowy Pana Krzemieńskiego nadszedł czas na prelekcje na którą bardzo długo czekałam. Był to wykład o nazwie "CPU caches and why you care"  w sumie Pan Scott Meyers przemawiał dwa razy. Drugi zrealizowany był  po przerwie obiadowej był to:  " Support for embedded programming in C++ 11 and C++ 14".
 Pan Scott Meyers jest światowej sławy programistą, autorem bardzo popularnych książek o programowaniu obiektowym między innymi: " C++. 50 efektywnych sposobów na udoskonalenie Twoich programów".
Pan Meyers przemawiał do uczestników  z wielką pasją podchodząc do tego z profesjonalizmem połączonym z nutką humoru. Dzięki temu wykład był bardzo ciekawy oraz przebojowy, jest wzorem wykładowcy, którego słucha się z zapartym tchem. Po zakończeniu wykładu niektórzy z nas czuli pewien niedosyt związany z długością trwania wykładu. Co jest w pełni zrozumiałe.


 Następnym bardzo ciekawym wykładem był  " Core principles and practices for creating lichtweight design"  przemawiał Pan Venkat Subramaniam. Wielokrotnie nagradzany autor książek oraz  założyciel Agile Developer. Ostatnią książką, którą wydał jest "Functional Programming in Java: Harnessing the Power Of Java 8 Lambda Expressions". Pan Subramaniam przemawiając połączył swoją niebywałą wiedzę plus ogromne poczucie humoru w jedną nierozłączną całość, czyniąc swój wykład kunsztem dla słuchaczy.  Mówiąc nas z przekąsem "Your code can not be dirty" sprawił, że sala zaniosła się śmiechem, co sprawiło że na drugi wykład tegoż Pana czekaliśmy z niecierpliwością.


W przerwie pomiędzy wykładami był poczęstunek. Oferowana była pizza oraz napoje  dla każdego uczestnika, warunkiem było ukazanie swojego identyfikatora.Pizza była bardzo smaczna chyba nie widziałam uczestnika, który narzekał na posiłek.


Po posiłku wiele z nas wyszło na zewnątrz, żeby zaczerpnąć świeżego powietrza oraz " puścić dymek".

W trakcie godzinnej przerwy uczestnicy mieli czas aby porozmawiać o swoich dotychczasowych osiągnięciach w dziedzinie IT oraz o wrażeniach z pierwszej części wykładów, również wielu z nich zechciało po prostu pospacerować, po dłuższym siedzeniu na wykładach.



Po przerwie nadszedł czas na kontynuacje prelekcji . Pierwszym wykładem po przerwie był  już wcześniej wspominany Pana Scotta Meyersa'a " Support for embedded programming in C++ 11 and C++ 14.


Po tym wykładzie nastąpiło wręczenie nagród " This is the road to smartcity":

I miejsce i  główną nagrodę zdobył Krzysztof Guz,
II miejsce zajął Filip Malawski,
III miejsce zajęli Krzysztof Kowalski i Tomasz Serafiński.

Równolegle z rozdaniem nagród odbywała się prelekcja Pana Bartosza Szurgota.
Ostatnim wykładem , który wybrałam był " Functional programming? Technical Reasons to adapt". Pan Venkat Subramaniam po raz kolejny pokazał swój kunszt, sposób w który zwalczył zmęczenie u ludzi będących od rana na nogach  był znakomity, po raz kolejny z dużą dozą humoru oraz fachowego podejścia poprowadził wykład znakomicie, sprawiając, że człowiek poczuł  niedosyt i zechciał więcej owych wspaniałych prelekcji w wykonaniu tego Pana. 

Po zakończeniu konferencji odbyło się Afterparty, przy świetnej muzyce oraz odrobinie mocniejszych trunków lub zwykłych napojów jak kto woli ( lub może) , uczestnicy mogli porozmawiać o swoich dotychczasowych osiągnięciach naukowych oraz porozmawiać z światowej klasy programistami.


Także Code::dive zakończył się już 4 dni temu, po konferencji zostały nam jedynie wspomnienia w postaci zdjęć, identyfikatorów oraz autografów.
 Autografy są bardzo ważne ponieważ każdy kto spojrzy  na podpis Pana Scotta Meyersa pomyśli w taki sposób - "A może gdybym się przyłożył na studiach, zaczął szukać własnych rozwiązań do problemów, które przytłaczają większość programistów. Jeżeli zrobię coś dobrze i będzie to dobre dla każdego użytkownika mojego rozwiązania, może i mnie ktoś kiedyś poprosi o autograf." Warto to rozważyć. Czasami warto spełniać swoje najskrytsze marzenia, wbrew krytyce poruszającej się wokół nas  populacji warto robić swoje. To zawsze procentuje... w formie wiedzy...