The Essence of Programming

Server-status w Apache

14 czerwca 2010

Dziś zauważyłem, jak dodać statystyki serwera dla Apache. Jest to całkiem proste. Wystarczy tylko dodać do configu:

<Location "/server-status">
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1
</Location>

Po otwarciu strony (np. http://localhost/server-status) otrzymujemy informacje dot. uptime'u serwera, ostatniego restartu, całkowietego transferu, loadu oraz aktualnych requestów.

Konfiguracja OpenVPN na routerze z DD-WRT

31 maja 2010

Jeśli posiadacie router z zainstalowanym DD-WRT to po pewnym czasie zaczniecie się zastanawiać jak wykorzystać jego możliwości. Jedną z nich jest VPN.

W poniższej instrukcji zamierzam przedstawić proces konfiguracji VPN na routerze z zainstalowanym DD-WRT

Instrukcja zakłada, że OpenSSL jest zainstalowany i nie tłumaczy procesu jego instalacji.

Dynamiczne parametry w Ajax.Autocompleter

03 stycznia 2010

Post ten rozpoczyna cykl krótkich notatek, jakie zapisywałem sobie na moim drugim blogu po angielsku a postanowiłem je dodać również tutaj.

Dwa dni temu miałem problem z Ajax.Autocompleter (z biblioteki script.aculo.us). Potrzebowałem użyć dynamicznych parametrów wysyłanych w żądaniu do serwera. Normalnie są one tworzone statycznie w czasie kiedy tworzona jest instancja klasy. Oczywiście można zmienić to zachowanie, np.:

new Ajax.Autocompleter(
    'search',
    'autocomplete_choices',
    'index.php?controller=search&action=autocomplete', {
        paramName: 'name',
        callback: function(element, entry) {
            return entry+"&"+Form.Element.serialize('type');
        }
    }
);

Wykorzystując callback możemy dodać dynamiczne parametry do naszych zapytań.

Może znacie jakiś lepszy/inny sposób?

Ubuntu i instalowanie programów napisanych w Javie

23 kwietnia 2009

Na przyszłość:

Jeśli w Ubuntu wyskoczy podczas instalacji jakiegoś programu javowego taki oto komunikat:

No Java virtual machine could be found from your PATH environment variable
Wystarczy tylko wykonać polecenie:
sudo update-java-alternatives -s java-6-sun

Usuwanie zduplikowanych danych z MySQL lub PostgreSQL

26 marca 2009

Jeśli zdarzyło Ci się napisać skrypt wrzucający dane do bazy ale przeoczyłeś pewien drobny szczegół i zauważasz po jakimś czasie, że dane się duplikują, to na blog.adiasz.pl znajdziesz rozwiązanie problemu usuwania zduplikowanych danych z bazy MySQL lub PosgreSQL.

Kocham kodowanie ...

25 marca 2009

Na przyszłość:

Usunięcie parametru ?charset=utf8 z sqlalchemy.url może czasami oszczędzić mnóstwo roboty.

Także jeśli wyświetlają Ci się krzaczki przy pobieraniu danych z bazy spróbuj tego rozwiązania :P

Komunikator Tlen na Mac OS X

12 marca 2009

W końcu pojawiła się oficjalna wersja komunikatora Tlen na system Mac OS X :D Więcej info na stronie www.tlen.pl/macosx.

PS. Można także rozmawiać z użytkownikami GG oraz XMPP - wystarczy tylko uruchomić odpowiedni plugin :D

Jak uruchomić WebInspector w Safari ?

13 stycznia 2009

Instrukcja aktywowania WebInspectora w Safari:

Piszemy w terminalu na Macu:

defaults write com.apple.Safari WebKitDeveloperExtras -bool true

Uruchamiamy Safari, wchodzimy na jakąś stronę i klikamy na elemencie prawym przyciskiem myszy a następnie wybieramy "skontroluj ten element".

Może komuś się przyda :) Enjoy!

Premiera Internet Explorera 8 przesunięta

21 listopada 2008

Za dobreprogramy.pl:

Microsoft oficjalnie potwierdził, że Internet Explorer 8 nie zostanie ukończony w tym roku.

Firma przesunęła premierę nowej wersji przeglądarki internetowej na 2009 rok. Wcześniejsze oficjalne informacje wskazywały, że Internet Explorer 8 zostanie wydany jeszcze przed końcem bieżącego roku. Jak tłumaczy Microsoft, Opóźnienie spowodowane jest potrzebą wydania jeszcze jednej wersji przedpremierowej, która ma pojawić się w pierwszym kwartale przyszłego roku i będzie już wersją Release Candidate - ostatnią przed finalną odsłoną.

Może tym razem Microsoft nie wypuści kolejnego przeglądarkowego gniota/bubla i dopracuje wszystko tak jak trzeba mając na uwadze również bieżące standardy?

Usuwanie elementów z DOM w IE

16 września 2008

Jeśli ktoś z was próbował kiedyś dodawać elementy(np. tabelaryczne) za pomocą JS a następnie je usuwać w Internet Explorerze - wie, że to koszmar.

IE ma problem przy usuwaniu elementów poprzez pobieranie listy elementów rodzica(childNodes, czy sprawdzaniu firstChild)

Nowy minimalistyczny szablon

30 maja 2008

Znalazłem trochę czasu i postanowiłem zmienić szablon bloga :) Denerwował mnie w nim brak przejrzystości i funkcjonalności. Aktualny szablon, który przygotowałem miał być maksymalnie minimalistyczny. Chyba się udało :)

Zostało kilka poprawek do zrobienia, elementów, stylów i JS(zwijane menu boczne) do dodania, ale to już jest "małe piwo" i będę starał się to na bieżąco uzupełniać :)

Co do wpisów z mojego życia postanowiłem, że wszystkie będą pojawiać się w serwisie niezależnym od Joggera, czyli tumblr - life.gruszka.info

W miniblogu pojawiać się będą wpisy, które nie będą artykułami i ich wartość merytoryczna znacząco odbiegać będzie od głównej treści bloga.

Wpisy dotychczas napisane, ale nietechniczne przeniosę na wyższy poziom, także od teraz nie będą one dostępne.

Jak widzicie zmiany już nadchodzą, niedługo będzie jeszcze ciekawiej :)

CSS Naked Day

09 kwietnia 2008

Dołączam się dzisiaj do akcji CSS Naked Day i w związku z tym rozebrałem mojego joggerka :)

SmallGallery v0.3.8

30 marca 2008

Kolejna wersja SmallGallery do ściągnięcia - v0.3.8 :)

Czym jest SmallGallery?
To prosty skrypt galerii pozwalający na poruszanie się po katalogach i przeglądanie zdjęć w nich zawartych. Istnieje również możliwość zgrywania plików do odpowiednich folderów przy pomocy www :)

PingerCast - zobacz o czym piszą Pingerowcy

03 marca 2008

Zauważyłem już jakiś czas temu, że brakuje narzędzia pozwalającego śledzić wpisy z serwisu pinger.pl, które grupowałoby je wg określonych tagów. Postanowiłem więc skorzystać z okazji i stworzyć coś takiego :)

Użytkownik podczas dodawania nowych wpisów do swojego bloga w serwisie pinger.pl, może oznaczyć je odpowiednimi tagami, dzięki którym PingerCast z agreguje odpowiednie treści. PingerCast przechowuje wpisy tylko z ostatnich 48 godzin.

PingerCast połączony został również z PingerMapą - tagi pojawiające się na mapie kierują bezpośrednio do odpowiednich stron PingerCastu.

Całość jest już funkcjonalna, ale w najbliższej przyszłości zamierzam jeszcze poprawić niektóre elementy, aby było jeszcze lepiej :)

Zapraszam do korzystania i będę wdzięczny za wszystkie uwagi dot. działania(również te bardzo krytyczne).

Dla zainteresowanych współpracą: blazej.gruszka [małpka] gmail [kropka] com

Dwa lata na joggerze :)

18 stycznia 2008

Kilka dni temu mój blog obchodził już 2 urodziny :) Dziękuję tym wszystkim, którzy go czytają, bo dzięki wam wiem, że warto naskrobać coś od czasu do czasu. Poza tym obiecuję, że pojawią się nowe ciekawe wpisy dot. programowania i IT! Proszę o nutkę cierpliwości :)

PingerMapa - mapa serwisu pinger.pl

07 stycznia 2008

Zawsze chciałem zrobić coś używając Google Maps API. Teraz w końcu jestem w stanie powiedzieć, że coś takiego przy pomocy moich rąk powstało. Padło na serwis pinger.pl, a w połączeniu z mapami Google, szczyptą AJAX'u oraz JS dało PingerMapę. Spytacie co to jest?

PingerMapa jest narzędziem pozwalającym na bieżący podgląd skrótów wpisów(160 znaków) dodawanych przez użytkowników w serwisie pinger.pl, odzwierciedlając tym samym ich faktyczne położenie na mapie świata :)

Stronicowanie w PHP

27 grudnia 2007

Jest wiele możliwości stworzenia stronicowania w PHP. Ja zamierzam przedstawić jedną z nich, która moim zdaniem dobrze nadawać się będzie do użycia np. w różnego rodzaju skryptach galerii nie korzystających z baz danych. Dla nieświadomych, czym jest stronicowanie? - podziałem treści na strony ;)

Wyobraźmy sobie, że stworzyliśmy galerie plików. Pod uwagę wzięliśmy podział na obiekty. Obiektami mogą być pliki graficzne oraz foldery(zawierające inne pliki), oczywiście zawierać mogą one różne właściwości, np. typ, tytuł, url, kategorię, datę utworzenia.

SQL i instrukcja CHECK

09 grudnia 2007

Chciałbym poświęcić kilka słów na temat użycia SQL'a oraz jego instrukcji, które nie są zbyt często opisywane w różnych tutorialach i kursach. Dzisiejszy artykuł będzie pierwszym z cyklu "jak to działa" ;) Aby przetestować przykłady znajdujące się poniżej, musimy zaopatrzyć się w bazę PostgreSQL lub MS SQL.

Automatyczna aktualizacja do IE 7.0

02 grudnia 2007

Przed chwilką włączyłem Windowsa XP i okazało się, że jest do zainstalowania poprawka. Nie byłoby w tym nic dziwnego, gdyby nie to, że jest to aktualizacja Internet Explorera do wersji 7.0! Ciekawe jakie niespodzianki Microsoft jeszcze szykuje? :)

ENUM w Ruby on Rails

27 listopada 2007

A to ci heca! ActiveRecord w Ruby On Rails nie wspiera typu ENUM dla kolumn!

Does ActiveRecord support ENUM column types?
No, not currently.

Jeśli korzystamy z baz danych MySQL to sobie jeszcze jakoś poradzimy, ale co do innych DB niestety będzie trzeba poczekać :-/. W Postgresie(podczas tworzenia tabeli) możemy zamiast ENUM użyć np. CHECK

Photoshop na Linuksie?

26 listopada 2007

Według gazeta.pl:

Za najważniejszą aplikację, która blokuje migrację na Linuksa, uznano Adobe Photoshopa.

Fakt! Ale to nie znaczy wcale, że nie można uruchomić Photoshopa na Linuksie. Ba!, można nawet na nim w miarę normalnie pracować :D

Dla chcącego nic trudnego - Adobe Photoshop 6.0 CE(dzięki Wine) :)

Adobe Photoshop under Linux

Rozważania nad nową wersją SmallGallery

17 listopada 2007

Od tygodnia rozważam w swojej głowie zmiany/innowacje jakie mam dodać do najnowszej wersji SmallGallery.

Prawdopodobnie będzie to:
- konfigurator(przez www) zapisujący konfigurację w plikach xml
- stronicowanie
- zmiana biblioteki LightBox na ThickBox ? (galeria zyskałaby możliwość wyświetlania plików video)
- przycisk wstecz, który nie będzie JS
- miniatury zapisywane na dysku, dzięki czemu cache'owane

Jednocześnie wszystkich chętnych oraz osoby korzystające z galerii zapraszam do współpracy. Być może macie jakieś nowe pomysły, które warto byłoby uwzględnić? Czekam na komentarze :)

Wpisy wielojęzykowe na Joggerze - implementacja

13 listopada 2007

Znam kilku Joggerowiczów, którzy dodają swoje wpisy w językach innych niż ojczysty. Tworzą oni tym samym nowe kategorie, w których je umieszczają. Pytanie brzmi, po co, bądź czy nie dałoby się tego rozwiązać w inny, ciekawszy sposób?

Rozwiązanie, które zamierzam przedstawić w całości oparte jest na JavaScript i jQuery.

HTML Challenge

06 listopada 2007

Znalazłem przed chwilą ciekawą rzecz - HTML CHallenge. Mój wynik 46 znaczników, więcej w 5 minut nie umiałem wymyślić :P I Ty sprawdź jak dobrze znasz HTML-a ;)

Ubuntu 7.10 - ShipIt

06 listopada 2007

Właśnie przyszła mi paczka a w niej Ubuntu 7.10. Czekałem coś ok. 4 tygodni, ale opłacało się - fajnie jest dostawać coś za free :) W zestawie płytka + naklejki. Dołączam zdjęcia w niezbyt doskonałej jakości, ponieważ nie miałem pod ręką nic lepszego niż stary "pseudocyfrowy" aparat Aipteka :P

Debugowanie w Ruby on Rails

04 listopada 2007

Czasami w aplikacjach railsowych zdarzają się błędy które trudno wychwycić gołym okiem, bądź znaleźć w logach. Co wtedy zrobić? Na szczęście programiści Ruby on Rails wymyślili narzędzie, które pomaga debugować aplikację w różnych punktach napisanego przez nas kodu.

API dla Rails

12 października 2007

Właśnie znalazłem stronę zawierającą dokumenty API dla Rails(całość oparta na AJAX) - http://railsbrain.com/

Ciekawe i podręczne. Warto dodać do ulubionych :)

Wpisy wielojęzykowe na joggerze

09 września 2007

Udało mi się zrobić na swoim blogu możliwość pisania w języku polskim i angielskim równocześnie :) Użyłem jQuery oraz czystego JS(dlatego, że nie wiem jak sprawdzić w JQ czy dany obiekt istnieje :P). Skrypt rozpoznaje, czy dostępna jest wersja artykułu po angielsku, jeśli tak to dodaje odpowiedni link :) Póki co ten trick jest w wersji beta, ale jak go podrasuje, to opisze jak zrobić to na swoim joggerze :)

Przykładowy wpis: http://gruszka.info/2007/08/30/znajdz-swoich-znajomych-z-gmaila-na-twitterze

PS. Nie przejmujcie się moją gramatyką angielską jakby co ;)

Znajdź swoich znajomych z gmaila na twitterze :)

30 sierpnia 2007

Na twitterze jest nowy gadżet: http://twitter.com/invitations/gmail. Dzięki niemu, każdy z nas będzie mógł znaleźć znajomych na twitterze, którzy również posiadają konto w gmailu :) Zabawmy się w szpiega... let's go :D

2 Mb/s

29 sierpnia 2007

Fajnie jest mieć 2Mb Internet :) a wszystko w standardzie mieszkaniowym w NL ;)

Kilka informacji o autorze

Programista, blogger, uwielbia białą czekoladę ;)