dominik bułaj

php developer & web designer

Subversive i mały zonk

Przy okazji pobrania PDT 2.2 zainstalowaÅ‚em na spróbowanie “firmowy” plugin do SVNSubversive. Plugin ten tworzy Fundacja Eclipse. WczeÅ›niej korzystaÅ‚em z Subclipse‘a.

Ogólnie wrażenia sÄ… bardzo pozytywne – rozszerzenie jest szybkie, dziaÅ‚a bardzo przyjemnie (rewelacyjna integracja ze Å›rodowiskiem) oraz oferuje mnóstwo opcji konfiguracyjnych.
JednÄ… z opcji jest możliwość ignorowania katalogów/zasobów majÄ…cych ustawione wÅ‚aÅ›ciwoÅ›ci “svn:externals” (patrz poniżej).
Przydaje siÄ™ to w sytuacji, gdy mamy wiÄ™kszy projekt i dołączonÄ… do niego zewnÄ™trznÄ… bibliotekÄ™. Możemy jÄ… rÄ™cznie wkopiować do projektu, ale możemy też “podlinkować” zewnÄ™trzne repozytorium (wiÄ™cej na ten temat).

Dzięki tej opcji, robiąc update na całym projekcie, Subversive ominie zewnętrzne repozytorium. Dzięki czemu cała operacja zakończy się dużo szybciej.

Zonk, jak mawia mój bardzo dobry kolega, polega na tym że zaznaczona opcja uniemożliwia w ogóle uaktualnienie katalogu będącego kopią danych z zewnętrznego repozytorium. Wg mnie wybranie update na takim katalogu (nie na całym projekcie) powinno zrobić update, a aktualnie w konsoli SVN znajdziemy coś takiego:

svn update "/home/webit/test/library/Zend" -r HEAD --ignore-externals

Co można przetÅ‚umaczyć jako “pobierz najnowszÄ… wersjÄ™ katalogu »/home/webit/test/library/Zend« ale ignoruj zewnÄ™trzne repozytorium”. A jako że katalog Zend jest podlinkowany w moim przypadku do http://framework.zend.com/svn/framework/standard/tags/release-1.9.3PL1/library/Zend, żadne dane nie zostanÄ… pobrane…

“git pull” w EGit

Tak się składa, że w ramach rozwijania swojej wiedzy, przygotowałem koledze webservice do jego aplikacji mobilnej. Sam webservice ma być proxy pomiędzy bazą danych (docelowo MS SQL) a aplikacją mobilną. Komunikacja odbywa się z użyciem protokołu REST. Tyle słowem wstępu ;)

Developer aplikacji zadecydował, że użyjemy Gita do kontroli wersji. Jest to moja pierwsza styczność z tym systemem (jeśli chodzi o prace developerskie), więc dziś opowiem o pewnej ciekawostce. Wpis ma charakter głównie ku pamięci, bo jak znam życie za 2 tygodnie nie będę pamiętał co i jak ;)

Jako że, webservice biega – a jakże – na Zend Framework, do kodowania używam Eclipse PDT. W Eclipse do obsÅ‚ugi tego systemu kontroli wersji mamy plugin EGit.

Dziś potrzebowałem wykonać komendę git pull. Okazało się, że nie ma takiej komendy zaimplementowanej. Natomiast z oficjalnego forum dowiediałem się, że git pull to w zasadzie połączenie git fetch i git merge.

Zatem, aby wykonać to samo co git pull musimy najpierw na projekcie zrobić Fetch (dostępne pod menu kontekstowym). Następnie wybieramy z tegoż samego menu Merge.
Pojawi się nam okno do wyboru taga lub brancha z jakim chcemy scalić wersję. Wybieramy Local Branches > master.

I gotowe :-)

PHP ma dziÅ› 15. urodziny!

Dokładnie 15 lat temu, 8 czerwca 1995, Rasmus Lerdorf na grupie dyskusyjnej comp.infosystems.www.authoring.cgi ogłosił pierwszą wersję Personal Home Page Tools (PHP Tools), protoplasty dzisiejszego PHP.

Oficjalne ogłoszenie dostępne jest do dziś na grupie, pod tym linkiem.

Czytnik Google jest kolejną aplikacją, która definitywnie kończy wsparcie dla Internet Explorera 6.

Jest to kolejna witryna Google’a, która przestaje wspierać tÄ… przeglÄ…darkÄ™. Poprzednio, w lutym tego roku, dziaÅ‚ techniczny YouTube przestaÅ‚ dostosowywać serwis do tego browsera.

DziÅ› sprawdzajÄ…c zaktualizowaÅ‚em Eclipse PDT do wersji 2.2. Samo Eclipse IDE zaktualizowaÅ‚o siÄ™ do wersji 3.6 – Helios.
Nie sÄ… to wersje oficjalne – oficjalnie nowy Eclipse i projekty wokół niego majÄ… mieć premierÄ™ w czerwcu.

Nowości w PDT:

  • nowe podpowiadanie (content assist)
  • kolorowanie skÅ‚adni ujednolicone do standardu Eclipse używanego w innych edytorach
  • możliwość zaawansowanego definiowania wÅ‚asnego kolorowania skÅ‚adni
  • podpowiadanie w PHPDoc – dla tagów @return, @see, @throw podpowiadane sÄ… nazwy obiektów
  • bardziej przejrzyste informacje o metodach, typach
  • Drag and Drop w edytorach PHP i JavaScript
  • caÅ‚kiem nowy, potężniejszy, PHP Search

Nowości w platformie Eclipse:

  • Eclipse Marketplace – wbudowany interface do http://marketplace.eclipse.org/, miejsca skÄ…d możemy pobrać pluginy
  • Quick Access (Ctrl+3) pokazuje w podpowiedzi skróty klawiszowe operacji
  • Open Resource – możliwość szukania nie tylko po nazwie pliku, ale także po Å›cieżce (w tym po Å›cieżce relatywnie wzglÄ™dem aktualnie edytowanego pliku)
  • drobne zmiany w widoku Synchronize view
  • menu Open With dostÄ™pne w momencie porównywania plików/wersji pliku

Pierwszą rzucającą się rzeczą, poza zmianami wizualnymi, jest szybkość działania edytora php. W końcu uporano się z problemami, które towarzyszyły przez cały rok wraz z PDT 2.1 ;)

Wszystkie zmiany szczegółowo opisano na stronach wydawniczych PDT.
JeÅ›li ktoÅ› ma problem (lub nie wie jak) zainstalować uaktualnienie Eclipse i PDT – odsyÅ‚am do Eclipsepedii.

Google Wave, od wczoraj, jest dostępne dla użytkowników Google Apps (aplikacji Google z własną domenę).
Wave to narzędzie do pracy grupowej. W założeniach ma poprawiać produktywność pracy zespołowej (ja jak na razie nie miałem okazji sprawdzenia tego w praktyce).

Aby mieć dostęp do usługi Wave w obrębie własnej domeny, administrator musi aktywować nowy serwis1.
W tym celu przechodzimy do panelu administracyjnego aplikacji, klikamy “Add more services”. NastÄ™pnie przy Google Wave klikamy przycisk “Add it now”. Musimy jeszcze potwierdzić, że na pewno chcemy aktywować nowÄ… usÅ‚ugÄ™.
W ustawieniach usługi możemy zmienić takie rzeczy jak:

  • adres internetowy (domyÅ›lnie: http://wave.google.com/a/[twoja domena])
  • czy użytkownicy mogÄ… komunikować siÄ™ z użytkownikami spoza domeny
  • powiadomienia e-mail

1 – aby móc aktywować, musisz w “Domain Setting” zaznaczyć opcjÄ™ “Enable pre-release features”.

UWAGA: Aplikacja Wave jest dostępna w ramach Labs i nie jest wspierana przez Google Apps Support team.

DziÅ› z rana czekaÅ‚a na mnie miÅ‚a niespodzianka. OkazaÅ‚o siÄ™, że Google Maps API w wersji trzeciej od dziÅ› sÄ… oficjalnym API. A to oznacza, że projekty, które do tej pory tworzyÅ‚em z wykorzystaniem V3 Beta stajÄ… siÄ™ od dziÅ› “stabilnymi aplikacjami”, jako że jeszcze 2 tygodnie temu wprowadzano dość istotne zmiany w samym API.

Ze swojej strony dodam, że V3 w stosunku do V2 wprowadziła wiele zmian w samym silniku. Wprowadzono model MVC, który bardzo łatwo się obsługuje. Dodano m.in. Elevation Service, poprawiono szybkość i wsparcie dla urządzeń mobilnych, wprowadzono obsługę warstw (ścieżki rowerowe, informacje o natężeniu ruchu) i widok uliczny. Jednym słowem wszystko to co potrzeba ;)

Jeśli używasz Google Apps, możesz od dziś używać kalendarza z nowym, odświeżonym, interfejsem.
Zmiany dotyczą samego wyglądu, i jak informuje firma, mają na celu dostosowanie do wyglądu pozostałych aplikacji firmy. Jedyna zmiana funkcjonalności dotyczy linka Zadania. Został on usunięty i teraz aby włączyć/wyłączyć listę zadań należy kliknąć na kalendarz Lista zadań. Inny możliwość, to kliknięcie pionowej niebieskiej belki na prawo od kalendarza.

Jeśli używasz Google Apps, a nie widzisz jeszcze nowego interfejsu kalendarza, możesz go aktywować. Musisz jednak mieć dostęp do panelu administracyjnego aplikacji. Tam pod Domain settings zaznaczamy Enable pre-release features.

Mi bardzo podoba się nowy wygląd kalendarza, z którego de facto bardzo często korzystam.

Niedawno pisałem, że Witryny rezygnują z Flasha. Kilka dni temu rozpętała się niemała burza, po tym jak Steve Jobs, założyciel i nadal szef Apple, opisał na blogu swoje przemyślenia nt. tej technologii.

W skrócie, Jobs zarzucił Adobe (aktualny właściciel technologii, którą przejął kilka lat temu kupując firmę Macromedia), m.in. że:

  • produkty oparte na Flashu nie sÄ… otwarte
  • urzÄ…dzenia video obsÅ‚ugujÄ… H.264, który jest wykorzystywany przez HTML5 (nie trzeba używać Flash Playera do ich odtworzenia)
  • brak technologii dotyku (głównie sprawa dotyczy iPhone i iPada)
  • najważniejsze chyba – niska niezawodność, bezpieczeÅ„stwo i wydajność (tu dorzucÄ™, że na linuksie spawa ma siÄ™ niemal podobnie, Flash jest cholernie wolny)

Wczoraj na swoim blogu, Deam Hachamovitch z zespołu zajmującego się przeglądarkami internetowymi w firmie Microsoft, napisał że nadchodzący Internet Explorer 9 będzie w pełni wspierał HTML5 i H.264. Flash Player będzie nadal obsługiwał IE9, ale Microsoft zaznacza, że technologia ta jest mało bezpieczna i wydajna.

Zatem chyba powoli zaczyna się, jakiś większy, bunt przeciwko Adobe Flash. Ja nigdy zwolennikiem Flasha nie byłem, więc jakoś strasznie brakować mi go nie będzie.

Na podstawie CHIP.pl: Microsoft zgadza siÄ™ z Apple’em, stawia na HTML5 i List otwarty Steve’a Jobsa w sprawie Flasha

Mozilla Jetpack to projekt mający na celu umożliwienie pisania rozszerzeń dla Firefoxa z wykorzystaniem technik webowych takich jak CSS, HTML i oczywiście JavaScript.

W nowej wersji SDK, oznaczonej numerkiem 0.3, udostępniono możliwość zmiany menu kontekstowo przeglądarki. Udostępniono, bo większość operacji wykonuje się z użyciem API. W tym wypadku mowa o Context Menu API.

Dalszy ciÄ…g tekstu »

Wczorajszym wieczorem ukazała się nowa wersja Zend Framework, oznaczona numerkiem 1.10.4. Poprawiono w niej około 50 przeróżnych błędów wyłapanych przed dwoma tygodniami w tzw. Bug Hunt Days.

Jak informuje Zend na swoich stronach, 3 poprawki są warte szczególnej uwagi:

  1. Zend_Amf – poprawiono serializacjÄ™ (wzrost wydajnoÅ›ci o 200-300%)
  2. poprawiono działanie Zend_Loader::isReadable() na platformach Windows
  3. dodano łatkę do Zend_XmlRpc_Value, która poprawiła wydajność; w tym wypadku użycie pamięci (w przypadku przetwarzania dużych ilości danych) spadło z ponad 1GB do 20MB, a czas realizacji zadanai z ponad 60 sekund do około 10

Szczegóły na stronach devzone.zend.com, nowa wersja do pobrania z http://framework.zend.com/download/latest

Interia.pl wczoraj zamieściła ciekawy artykuł zatytułowany właśnie Internet będzie trójwymiarowy.

Czytamy w nim, że:

Już za pięć-dziesięć lat korzystać będziemy z realistycznie wyglądających trójwymiarowych aplikacji.

TezÄ™ takÄ… stawia Sean Koehl z Intel Labs, który de facto pracuje nad technologiami 3D. Ciekawe jak bÄ™dÄ… wyglÄ…daÅ‚y te aplikacje. I czy w ogóle dojdzie do ich wydania/wdrażania…

Nowe Google Docs

Google właśnie poinformowało o nowej wersji aplikacji Docs (Dokumenty).

Co nowego?

Zmiany w edytorze tekstowym:

  • zmiany w edytorze (podglÄ…d zmian na żywo)
  • sidebar chat, znany z arkuszy, umożliwiajÄ…cy prowadzenie rozmów w oknie dokumentu
  • usprawniono importowanie/exportowanie
  • poprawiono system komentarzy
  • dodano możliwość modyfikacji marginesów i tabulacji

Zmiany w arkuszach:

  • przyspieszono silnik aplikacji – teraz edycja ma być jeszcze szybsza
  • dodano: edytor formuÅ‚ komórki, auto-uzupeÅ‚nianie, przeciÄ…gnij i upuść (drag&drop) kolumn
  • usprawniono nawigacjÄ™ miÄ™dzy arkuszami

Nowe narzÄ™dzie do grupowej edycji grafik. Dodano narzÄ™dzie do “malowania” w obrÄ™bie dokumentu umożliwia pracÄ™ grupowÄ… nad wszelkiego rodzaju diagramami. Grafiki te można nastÄ™pnie wykorzystać w edytorze tekstowym, arkuszu lub prezentacji. Ale uwaga – edytor ten nie obsÅ‚uguje trybu offline (Gears). Planowane jest dodanie wsparcia dla pracy offline, obsÅ‚ugi HTML 5 oraz wykorzystania możliwoÅ›ci nowych przeglÄ…darek. Na to wszystko musimy jeszcze poczekać…

Edytor grafik ma być udostępniony jutro. Zmiany w dokumentach i arkuszach mają być dostępne w ciągu następnych dni.

Zobacz prezentację nowości w Google Docs:
This video was embedded using the YouTuber plugin by Roy Tanck. Adobe Flash Player is required to view the video.

Dziś udostępniono dwie nowości w Gmail Labs (działa również w Google Apps).

Pierwszą nowością jest możliwość zagnieżdżania labeli. Zagnieżdżania odbywa się przez dodanie slasha w nazwie, np. możemy mieć:

  • Sport
  • Sport/Hokej
  • Sport/Kolarstwo

Czy to siÄ™ przyda?
Osobiście nie widzę, jak na razie, potrzeby korzystania z tej funkcjonalności. W zupełności wystarczają mi dzisiejsze labele.

Drugim nowym ficzerem jest podgląd wątku. Na liście wiadomości klikamy prawym(!) przyciskiem w wybrany wątek i w nowej warstwie pojawi się podgląd.
Fajne?
Myślę, że tak. Chociaż z drugiej strony zawsze możemy rozwinąć w standardowy sposób cały wątek.
Aha, w tym przypadku dziaÅ‚ajÄ… także skróty klawiaturowe. “h” otwiera podglÄ…d wÄ…tku, nawigujemy klawiszami “j” i “k” a zamykamy klawiszem Escape.

Więcej informacji na oficjalnym blogu Gmail.

Samba i linki symboliczne

Ostatnio Ubuntu zaktualizowaÅ‚o SambÄ™ i przestaÅ‚y dziaÅ‚ać linki symboliczne (błąd dostÄ™pu: access denied), a wÅ‚aÅ›nie w ten sposób do home’a podpiÄ™ty mam /var/www/, czyli aplikacje webowe. NastÄ™pnie, w ramach potrzeby, w Windows mapuje do dysku swój katalog domowy z linuxa. W ten sposób spod drugiego systemu mogÄ™ pracować na tych samych plikach i w tym samym Å›rodowisku.

Rozwiązanie owego problemu zajęło mi kilka (dłuższych) chwil. Co ciekawe, okazało się ono dziecinnie proste.
Poniższe trzy linijki należy wpisać do pliku konfiguracyjnego (/etc/samba/smb.conf) w sekcji global:

follow symlinks = yes
wide symlinks = yes
unix extensions = no

Następnie restartujemy sambę:

sudo /etc/init.d/samba restart

lub drugim sposobem (gdy mamy zainstalowany sysvconfig):

sudo service samba restart

PiszÄ™ to z dwóch powodów. Po pierwsze – ku pamiÄ™ci. Po drugie dlatego, iż jednemu koledze już udzieliÅ‚em powyższej rady. WiÄ™c widać problem jest dość czÄ™sto spotykany.

Archiwa