Piotr GeoS Galas techblog

CT - Creative Technology

Category: software (page 2 of 4)

Problem popsutej treści pod Apache / Problem of break down content under Apache

Od kilku miesięcy, jakoś po zmianie środowiska webdeveloperskiego z budowanego na własną rękę na WAMPa, występował u mnie problem popsutych/zmixowanych/rozjechanych/… obrazków, plików JavaScript i wszystkiego, co swoją treścią przekraczało 64KB (65535B).
Gdy od czasu do czasu trafiało się zlecenie i trzeba było wczytać do przeglądarki coś ponad te 64KB, to aż mnie szlag trafiał. Zaczynało się kombinowanie jak to obejść, później googlanie w celu znalezienia podobnego błędu u innych i jakiejś recepty na całe zło.
Okazało się, że rozwiązanie było dość proste i, co najśmieszniejsze, znalazłem je na forum poświęconym MS IIS.
Recepta wygląda tak – otwieramy plik konfiguracyjny httpd.conf i odkomentowujemy:

  1. EnableMMAP off
  2. EnableSendfile off

Być może jest jeszcze ktoś, kto męczy się z podobnym problemem i komu mój wpis pomoże (dotarcie do rozwiazania nie było dla mnie takie szybkie).

Above text tells that if you have problems with not proper showing images, loading scripts or any other content which Apache sends to your browser and what is bigger then 64KB (65535B) then it must be the same problem as I had for a few months (after changing webdevelopment plafromr to WAMP).
Solution is quite easy. Its enough just to uncomment in httpd.conf such lines:

  1. EnableMMAP off
  2. EnableSendfile off

I belive that this note can help also someone else as it wasn’t so easy (for me) to find it out.

PS Oryginalny link z rozwiązaniem / Oryginal link with solution:
http://www.sitepoint.com/forums/showpost.php?p=1840974&postcount=15

Nowości na legialive.pl

Jakiś czas temu wprowadziliśmy na legialive.pl kilka nowości. Są te starsze, jeszcze nie przedstawiane wprost, ale widoczne dla wprawnych obserwatorów i te nowsze.

Zaczynając od starszych – nasi widzowie od dłuższego czasu (chyba od końcówki zeszłego roku) mają dostęp do 3 rodzai kanałów RSS:

  1. dostępny od dawna kanał z newsami, wzbogacony jakiś czas temu o miniaturki zdjęć – http://www.legialive.pl/rss/newsy.xml
  2. kanał informujący o najnowszych video publikowanych na legia.tvhttp://legia.tv/rss/newsy.xml
  3. oraz kanał informujący o najnowszych galeriach foto, który (podobnie do kanału newsowego) zawiera miniaturki wybranych zdjęć – http://www.legialive.pl/rss/galerie.xml

Do tego wszystkiego dochodzi jeszcze kilka kolejnych bajerów. Mianowicie można teraz drukować przeglądanego newsa, dzisiejsze lub wczorajsze oraz dowolny inny zestaw (istnieje opcja wyboru, co ma zostać wydrukowane). Dzieje się to za pomocą przycisku “drukuj” ().
Jest, już standardowa pozycja w każdym portalu, “poleć” (). W przeciwieńswie do jednego z naszych “konkurentów”, nie przerzucamy odpowiedzialności na program pocztowy, więc linka można wysłać mając nawet nieskonfigurowany program pocztowy (lub nawet go nie posiadając w systemie).
Jest ikonka RSSów (), po której naciśnięciu możecie wybrać jedną z wyżej opisywanych opcji kanałów. Taką samą ikonkę można zaobserwować w pasku adresu w nowych przeglądarkach (Mozilla Firefox, Internet Explorer 7, Opera) na wszystkich stronach Legia LIVE!.
Jako ostatnia prezentuje się ikona “dodaj do…” (), która pozwala zapisać linka do danej treści w bazie kilku największych stron zajmujących się gromadzeniem tego typu danych (zarówno z naszego “podwórka”, jak i zagranicznych).
Nie można też zapomnieć o naszych wiernych forumowiczach, którzy po przeczytaniu całego newsa mogą w łatwy sposób przenieść się spowrotem na forum przez przycisk “Forum Kibiców” ().

Ostatnim pomysłem jest możliwość publikowania na stronach naszych kibiców informacji o najnowszych newsach, jakie pojawiają się na naszej stronie. Póki co są przygotowane 2 zestawy kolorystyczne – na czarne i na białe tło. Przykładowy wygląd poniżej:

Szczegółowe informacje możecie znaleźć tutaj:
http://www.legialive.pl/news/26266_Nowosci_Legia_LIVE.html

Mamy nadzieję, że nasza praca wychodzi na przeciw oczekiwaniom naszych widzów, ale oczywiście zawsze jesteśmy otwarci na ich, tudzież Wasze, sugestie.

Feed slideshow

Już dawno temu wrzuciłem na swoją stronę ciekawą opcję pod tytułem Feed slideshow. Bazuje ona na kodzie Google, odrobince mojego i feedach blogów, które oglądam.
Nie mniej do tej pory nie było okazji, żeby się tym pochwalić (jak zawsze – totalne urwanie głowy), dlatego zaległość nadrabiam teraz:
http://blog.piotrgalas.com/about/#ss

A long time ago I’ve added new interesting solution called Feed slideshow. Its based on Google’s code, some part of own code and blog’s feeds which I’m watching.
Till today there was occasion to inform you about it (as always – lots of stuff to do), but now it’s time to fix it:
http://blog.piotrgalas.com/about/#ss

Skype na Pocket PC

Dziś przetestowałem Skype na Pocket PC i musze przyznać, że bardzo fajnie to śmiga. Czas chyba w końcu zakręcić się za iPlusem i wycisnąć coś więcej z tej puszeczki (bo nie wszędzie przecież jest zasięg WiFi).

Google Calendar i Pocket PC (choć nie tylko)

Od jakiegoś czasu jestem szczęśliwym posiadaczem urządzenia z Windows Mobile 6 na pokładzie. Jednym z powodów, który przeważył o jego zakupie była chęć “organizacji czasu”. Tyle się słyszy o możliwościach, jakie obecnie dają urządzenia mobilne, nowoczesne telefony komórkowe, laptopy, …, aleeee … .

Jak to by mogło być, żeby nie było żadnego “ale”. Wszystko jest pięknie, gdy mówimy o hermetycznych, homogenicznych środowiskach aplikacyjnych, gdzie klient i wspierająca go platforma serwerowa pochodzi z jednej stajni, od jednego producenta. Tutaj trzeba przyznać, że faktycznie w wypadku takich okoliczności wszystko wygląda cacy, trzeba mieć tylko na to “trochę” kasy i śmiga aż miło (a jeśli nie, to przed szefem zawsze jest na kogo zwalić winę – “płacimy za licencję, więc pomęczymy się z supportem dostawcy rozwiązania”). Nie mniej nie o tym ma być ten cały post.

Zmierzając powoli do meritum problemu napiszę, że strasznie doskwiera mi brak możności wykorzystania dobrodziejstw dawanych ludziom przez przepiękne, funkcjonalne i całkiem dobrze działające aplikacje web 2.0 oraz wspomagające je pakiety typu Open Source.

Zapewne większość z was zdąrzyła się już spotkać z Google Calendar. Muszę przyznać, że usługa ta bardzo przypadła mi do gustu (pewnie z tego powodu dorobiłem się w niej kilkunastu kalendarzy, każdy do innych “zadań specjalnych”). Dodatkowo prywatnie, ale i służbowo, do obsługi poczty internetowej używam Mozilla Thunderbird. I tutaj właśnie zaczyna się cała zabawa. Któregoś dnia “z nudów” postanowiłem trochę poeksperymentować, lekko pod kątem pewnych projektów, a trochę dla zaspokojenia własnej ciekawości i ułatwienia sobie życia. W ten oto sposób zrodziła się idea sprzężenia całego tego ustrojstwa w jeden, sprawnie funkcjonujący, dostępny 24h na dobę z każdego miejsca na świecie i z dowolnego “terminala”, czasem nawet mobilnego, “system zarządzania kalendarzem/zdarzeniami”.
Google Calendar, jako podstawa całego tego zamieszania, jest niezależny od czego kolwiek. Kolejny etap to integracja na drodze Thunderbird < -> Google Calendar. Jak szybko się okazało, udało się to dość szybko wprowadzić w życie – wystarczyły raptem 2 dodatki.
Pierwszy z nich to Lightning (pl. Błyskawice). Dość ciekawa zabawka, która pozwala z “prostego” i “prymitywnego” Thunderbirda uczynić coś znacznie bardziej zbliżonego do “konkurencyjnego” i komercyjnego Microsoft Outlooka – dodaje funkcjonalność kalendarzy oraz zadań. Swoją przygodę z nim zaczynałem, gdy ten był w wersji 0.7. Jakiś czas temu wyszła 0.8 i interfejs uległ znacznej poprawie, nawet komercyjne projekty już nie musiałyby się wstydzić podobnego (a część na pewno mogłaby zazdrościć).
Drugi dodatek to Provider for Google Calendar. To właśnie dzięki niemu możliwym stało się sprzężenie TB z gCal – dodaje on natywne (GData) wsparcie googlowego formatu iCala.
Co ciekawe i fajne, w ten sposób uzyskałem praktycznie bezproblemowe, dwukierunkowe synchronizowanie “lokalnego” kalendarza TB z gCalem. Póki co sprawuje się nadzwyczaj dobrze (żebym tylko nie zapeszył :P).

Jak widać pierwszy krok w całej batalii poszedł dość gładko i zachęcony pierwszym sukcesem postanowiłem zabrać się za zsynchronizowanie mojego Pocketa z pozostałymi elementami układanki. Niestety tutaj już tak kolorowo nie było, a w zasadzie powinienem pisać, że nadal nie jest. Googlałem za jakimś produktem, nawet komercyjnym, który ułatwiłby pełną synchronizację konta kalendarzowego z urządzeniem mobilnym i niestety nic ciekawego nie znalazłem.
Próby postanowiłem rozpocząć jednak od tych darmowych i pierwszą rzeczą, na która natrafiłem w swoich poszukiwaniach, był GMobileSync. Wszystko niby fajnie, ale potrafi on synchronizować tylko jeden kalendarz. Niestety to nie wystarczyło dla mnie, więc poszukiwania trwały dalej.
Ostatnio natknąłem niby to na cudowną platformę, wynik projektu Open Source, która potrafi zsynchronizować wszystko i ze wszystkim – Funambol. Jakże wielkie było moje rozczarowanie, gdy biorąc się za niego wczesnym wieczorem, musiałem pierwszą potyczkę poddać o 4 rano bez żadnego sukcesu.
Docelową platformą systemową dla Funambola miał się stać Windows 2000, przynajmniej tymczasowo. Instalator pięknie śmignął przez cały proces osadzania softu na dysku, więc nadeszła pora odpalić serwer. No i tutaj pojawiło się pierwsze ale – nie chciał powstać. Walczyłem z tym do 4 rano i dałem sobie spokój – w końcu kiedyś trzeba się trochę przespać. Kolejne starcie podjąłem już “wypoczęty” kolejnego dnia. Okazało się, że autorzy nie przewidzieli bariery 2046 znaków, jakie system Windows 2000 może przyjąć w ramach komend wydawanych z poziomu skryptów powłokowych. Tutaj był koleny cyrk – szukanie po wszystkich skryptach (a tych CMDków w Funambolu nie brakuje), w którym miejscu wykłada się z komunikatem zbyt długiego polecenia.

Kolejny etap stanowiła próba optymalizacji używanych zmiennych bazowych, które w dalszej koleności służyły do budowy zależności bibliotekowych i programowych pomiędzy kolejnymi modułami całej platformy. Ciężko tutaj pominąć fakt, że oparta jest ona o Java (odziwo nawet nie żre to zbyt wiele zasobów) i stąd ta konieczność budowania gigantycznie długich CLASSPATH do każdego z (koniecznych do odpalenia) modułów. Byłoby z tym mniej zachodu, gdybym stawiał to na OSie Linuxowym lub jakimś nowszym dziecku firmy Microsoft. Już taki Windows XP i kolejne są już dużo milsze i pozwalają na przeszło 8000 znaków w poleceniach shellowych, co pewnie zaoszczędziłoby mi całkiem sporo czasu.

Po tym jak udało się odpalić serwer, a w zasadzie w ramach poszukiwania weny pomiędzy kolejnymi próbami jego odpalenia, zacząłem się interesować w jaki sposób połączyć ten serwer z resztą docelowego rozwiązania. Z pomocą przyszła wtyczka do produktów Mozilli – sync4jmozilla.
Tutaj pojawia się kolejna piękna historia. O ile z samym podstawowym kalendarzem TB działała ona całkiem spoko, o tyle już z kalendarzami Google za bardzo nie chciała (udało się bez crasha zsynchronizować serwer Funambola tylko z jednym z 6 testowanych kalendarzy). Samo to już stanowiło dość spory problem. Do tego pojawił się kolejny – z serwerem nie za specjalnie można synchronizować poszczególne kalendarze w sposób niezależny. Za każdym razem trzeba było w opcjach konfiguracyjnych przełączać kalendarz źródłowy – na pewno do czynności wygodnych i funkcjonalnych nie należało. Tak więc po kilkudziesięciu crashach TB dałem sobie spokój z tą częścią zabawy. Nadszedł czas na następne testy.

Żeby nie było za mało rozczarował, to przetestowałem również klienta Funambola na Pocket PC. Zainstalował się elegancko, więc zabrałem się za próbę łączenia go z postawionym już serwerem. Wszystko cacy, tylko jak przyszło w końcu do zsynchronizowania zapisów z telefonu z bazą serwera, to klient lubił sobie złapać zwis mniej więcej w 1/2, czasem 2/3 wszystkich zapisów.

Po tych wszystkich załamkach z Funambolem postanowiłem sobie dać spokój z tą platformą. Postanowiłem jeszcze dać szansę innym rozwiązaniom. W pierwszej kolejności padło na niezwykle często reklamowany, wręcz cudowny projekt – CompanionLink for Google. Niby wszystko pięknie, tylko po instalacji okazało się, że niestety komunikacja musi odbywać się z pośrednictwem klienta pocztowego i niestety darmowego TB na liście nie było (bo przecież Outlook, Lotus, Novel, … są “lepsze”). W ten cudowny sposób odpadła kolejna szansa spełnienia moich “marzeń” 😛

W międzyczasie był jeszcze krótki romans z darmowym ScheduleWorld, który odziwo jest oparty o dobrze już wam znanego Funambola. Załamka przyszła po tym, jak po pięknym zaakceptowaniu ekranu Google Calendara pytającego o udostępnienie danych ScheduleWorld (bo to właśnie on ładnie przekierował do niego), wyłożył się on przy próbie importu danych. Jednocześnie ogłosił, żeby spróbować później.
Podjąłem jeszcze jedną próbę (i chyba na jakiś czas jedną z ostatnich). Otóż tym razem padło na nuevasync.com. Projekt w fazie beta, co niestety dało się odczuć po zarejestrowaniu się – po wpisaniu loginu i hasła serwer odmawiał dalszej współpracy. Przez jakiś czas na bank nie będę się do niego dobijał.

W ten oto sposób przebrneliście przez moje znoje i próby pełnej – dwukierunkowej – synchronizacji pomiędzy ThunderBirdem < -> Google Calendar oraz Pocket PC < -> Google Calendar (czy to z pośrednikami, czy też bez nich). Najbardziej poraża fakt, że Google wypuścił soft dla platformy Blackberry, są mniej lub bardziej udane rozwiązania dla produktów komercyjnych (Lotus, Novel, Microsoft, …), a nie ma czegoś dającego podobną funkcjonalnośc w ramach Open Source lub na zasadach freeware.
Jakiś przełom w tym temacie być może przyniesie, przedstawiony jakiś czas temu, projekt Google Gears przeznaczony dla platformy Windows Mobile 6.x. Założenia ma bardzo fajne (jak np. zdolność pracy aplikacji w trybie offline) i w notce można przeczytać o pierwszych wdrożeniach tego produktu w życie, ale czy przebije się na większą skalę

Tym optymistycznym (mam nadzieję) akcentem kończę ten, dość długi, wpis.

PS Jeśli ktoś zna jeszcze jakąś alternatywę, która działa, to czekam na informację.

Pixelpost && SEO

Jakiś czas temu odezwał się do mnie pewien Holender imieniem Ties (pozdrawiam). Chodziło mu o aktualizacje mojego starego dodatku Gravatar Comments (czy jakoś tak) do Pixelposta, co by działała pod nowszą wersją. Przy okazji wyszło, że chciał wdrożyć “małe” SEO pod zainstalowaną skórkę. Wychodząc na przeciw, bo w sumie chodziły mi obie te rzeczy od dość dawna po głowie, spełniłem jego prośbę. Efekt możecie oglądać poniżej.
PS Jeśli ktoś jest zainteresowany podobnym rozwiązaniem, to polecam się pamięci 🙂

Some time ago I was asked by Ties from Holand (greetings Ties) about update of my Gravatar Commnets Addon (or something like that) to Pixelpost, to use it under newer version. Additionaly he wanted to add SEO to his template. I must say I was thinking about this two ideas for quite long and it was good occasion to do it. Below you can watch effects.
PS If someone else is thinking about similar solution at his/her blog then please, contact with me 🙂

http://www.blauwgestreept.nl/foto/De-Adriaan

Legialive.pl :)

Dziś dodaliśmy nową funkcję w galeriach na Legialive.pl – możliwym stało się bezpośrednie linkowanie do zdjęć, przy zachowaniu Lightboxa jako rozwiązania wyświetlającego. Niby nic, a cieszy 🙂

Today we have added new feature to galleries at Legialive.pl – you can link directly to the photos still with usage of Lightbox as presentation solution. It seems to be nothing but its nice 🙂

Live demo: http://www.legialive.pl/galeria/444/#08sosnowiec2_f102.jpg,1

Linux.com :: Photoblogging with Pixelpost

Dziś kolega Dennis, z projektu Pixelpost, podesłał mi bardzo miłego linka odnośnie naszego dzieła.
Zachęcam do zapoznania się z artykułem na temat fotoblogowania z Pixelpostem:

http://www.linux.com/feature/128667

Today my friend Dennis, from the Pixelpost project, sent me very nice link about our “child”. Please take a look on article about photoblogging with Pixelpost:

http://www.linux.com/feature/128667

Wirtualizacja QNXa na bazie VM Server

W ostatnim czasie, z racji pojawienia się możliwości zaliczenia przedmiotu “na skróty”, bawiłem się w wirtualizację QNXa. Zadanie polegało na przedstawieniu wirtualnego środowiska z kilkoma (>=2) działającymi instancjami systemu, który wspierałby jeden z jego atutów – obsługę sieci o nazwie QNET.

Zadania podjąłem się i wykonałem je przy użyciu VM Server 1.0.3 (jakoś nie zauważył?em, że na stronie producenta była już dostępna wersja 1.0.4) oraz Momentics QNX Neutrino 6.3.2. W obu wypadkach, po uprzednim zalogowaniu się, istnieje możliwość otrzymania kluczy rejestracyjnych w ramach licencji NON-COMMERCIAL.

Jak się okazało, zadanie wcale nie było trudne. Napotkałem jedynie 2 “problemy”.
Pierwszy to konieczność wyłapania jaką kartę sieciową emuluje VM Server i czy QNX z jej driverem “pójdzie” (rozwiązaniem był devn-pcnet.so obsługujący wszystkie karty oparte o układ AMD).
Drugi problem dotyczył błędów przy instalacji i braku bibliotek niezbędnych do kompilowania kodu C/C++. Po raz kolejny chyba zawinił FlashGet i okazało się, że ściągnięte instalacyjne ISO płyty było lekko trachnięte (instalator sprawdzał sumy kontrolne archiwów z powyższymi plikami i na tym właśnie się wykładał). W międzyczasie, gdy ja walczyłem z przeciwnościami, z pomocą przyszedł tatuś i sciągnął nowiusieńkie i nie padnięte nowe ISO 😛 Tym razem wszystko poszło gładko.

Na potrzeby zaliczenia stworzyłem też mały dokumencik ze screenshotami pokazującymi całą procedurę stawiania środowiska do wirtualizacji, instalacji QNXa, odpalania na nim QNETu oraz “namnażania” kolejnych instancji systemu.
Jeśli ktoś jest zainteresowany tematem, to niech zgłasza się przez komentarz lub wysyłając do mnie wiadomość (email/GG/ICQ/Skype).

Poniżej screen dokumentujący jedno ze stworzonych wirtualnych środowisk (podczas “zabaw” powstały 2).

QNX 6.3.2 pod VM Server 1.0.3

Habiteos

Kilka dni temu ruszył ostatni mój projekcik, www.habiteos.pl, wykonany dla XRS Nowe Media.

Few days ago has started my last project, www.habiteos.pl, made for XRS Nowe Media.

Older posts Newer posts
  • RSS
  • Blip
  • Twitter
  • Facebook
  • GoldenLine
  • LinkedIn
  • Nasza Klasa
  • Grono
  • Panoramio
  • YouTube