Małe zmiany
Jak widać małe zmiany na blogu, mniej zbędnych bajerów, prostota i przejrzystość.
Jak widać małe zmiany na blogu, mniej zbędnych bajerów, prostota i przejrzystość.
W technicznym blogu nie może się obyć bez kolorowania składni publikowanego w postach kodu źródłowego, po zaaplikowaniu pluginu Syntax Hightligh Code opartego na GeSHi i włączeniu go w WP wszystko działa super, ogólnie polecam.
Dzisiaj pojawił się problem, jak na jednej maszynie postawić wiele demonów dhcp jako osobne procesy, tak aby każdy obsługiwał inny kawałek sieci. Rozwiązanie nader banalne (RTFM dhcpd3) : dhcpd [ -pf pid-file ] czyli co ? Zmieniamy pid-file i możemy sobie odpalić n instancji dhcpd
Ogólnie rzecz biorąc problem występował już od jakiegoś czasu ale nigdy nie miałem chwili żeby do tego porządnie usiąść. Sam fakt debugowania python’a mnie przerażał no ale musiałem coś z tym zrobić bo jaki TRAC jest każdy widzi - czasami cholernie potrzebny ;) tak więc zabrałem się do rozgryzania problemu z segfaultem przy trac-admin, po pierwsze czekało mnie uruchomienie gdb oto rezultat: #0 0x285b6603 in sqlite3Fts2InitHashTable () from /usr/local/lib/libsqlite3.so.8 No wszystko wiadomo odpowiedzialny okazał się sqlite, aktualnie przbudować trzeba było configurację sqlite’a tak aby nie używał FTS2, czyli Full Text Search no ok, za pomocą ...
Właśnie instaluję Leoparda. Mały hint dla wszystkich posiadających zbackupowaną płytkę DVD Mac OX Leopard i nie mają za bardzo ochoty kupować drogich DVD-DL otóż da się zainstalować system z ISO bez żadnego problemu pod warunkiem, że posiadamy zewnętrzny dysk na FireWire. Rozwiązanie: Montujemy dysk zewnętrzny Formatujemy go, tworzymy sobie partycję wielkości DVD-DL lub większą ;) (ja sobie zrobiłem 10Gb) w Disk Utility zaznaczamy sobie partycję na dysku zewnętrznym, którą stworzyliśmy. klikamy na Restore na pole Source drag’n dropowo przeciągamy sobie nasz obrazek ISO, a na pole Destination zrobioną partycję klikamy restore (robi sie to jakieś 10-20 minut) Enjoy
Poniżej dla potomoności, parę przydatnych funkcji w MySQL służących do oblicznia danych sieciowych: DROP FUNCTION IF EXISTS check_network; DROP FUNCTION IF EXISTS get_network; DROP FUNCTION IF EXISTS get_broadcast; delimiter | CREATE FUNCTION check_network(ip1 VARCHAR(25), ip_netmask VARCHAR(25), ip2 VARCHAR(25)) RETURNS INT DETERMINISTIC BEGIN IF((INET_ATON(ip2) & INET_ATON(ip_netmask)) = (INET_ATON(ip1) & INET_ATON(ip_netmask))) THEN RETURN 1; ELSE RETURN 0; END IF; END| CREATE FUNCTION get_network(ip1 VARCHAR(25), ip_netmask VARCHAR(25)) RETURNS VARCHAR(20) DETERMINISTIC BEGIN RETURN INET_ATON(ip1) & INET_ATON(ip_netmask); END| CREATE FUNCTION get_broadcast(ip1 VARCHAR(25), ip_netmask VARCHAR(25)) RETURNS VARCHAR(20) DETERMINISTIC BEGIN RETURN INET_NTOA(INET_ATON(ip1) + (INET_ATON('255.255.255.255') - INET_ATON(ip_netmask))); END| delimiter ;
Przy większych projektach wiadomym jest fakt, że głęboka analiza jakości kodu jest podstawą, szczególnie jak pracuje się w grupie i nie zawsze mamy czas na sprawdzanie kto i jak zmienił funkcjonalność. PHP nie jest prosty do debugowania, ale narzędzia które ostatnimi czasy pojawiły się w sieci są naprawdę niezłe, mowa tutaj o rozszerzeniu xdebug 2.0 RC4 najfajniejszym dodatkiem w nowej wersji opisywanego jest dołożenie obsługi DBGp czyli protokołu zdalnego debugowania aplikacji, który jest następcą GDB klika naprawdę fajnie. Klientów jest trochę, na stronie xdebug’a są opisane. ...
Jakiś czas temu dorwałem w łapki dość przyjemny pak z apache’m, php’em i mysql’em o nazwie MAMP działa dobrze i nie “brudzi” w systemie, jednakże okazało się, że nie posiada paru modułów w php, których używam - stwierdziłem, że nie ma sensu bawić się portami i przebudowałem MAMP’a tak, aby można było korzystać z PECL’a i powiem szczerze da się :) Do MAMP’a dodałem: xdebug 1.3.2 apd 0.9 Myślę, że zrobię z tego małe .dmg - ale jakby ktoś chciał szybciej to dawać znać. :) ...
Czasami naprawdę zastanawiam się czy “pomysłowość” ludzka ma jakieś granice. Bo przecież co za chory umysł mógł wpaść na genialny pomysł wyprodukowania czegoś takiego jak elektroniczna bąbelkowana folia. W sumie jak dla mnie bomba, każdy z nas chyba lubi “poklikać” czasami na folii, dla tych którzy nie potrafią się oprzeć to polecam: Portable Bubble Wrap toy from Bandai Asovision - Puchipuchi Czyżby chęć “prześcignięcia” pomysłowości marketingowców z Sony? SONY PS2 en Malaisie ...
Mielenie po bazach SQL’owych za pomocą shell’a zaczęło mnie trochę męczyć, różne bazy, wiele zależności, widoki i inne pierdoły. Tak więc zabrałem się za poszukiwanie czegoś co mi ułatwi żywot, a zarazem będzie w stanie obsłużyć wiele baz jednocześnie. Znalazłem coś co zowie się Knoda typowy “database frontend”. Na debianie działa mi bardzo przyjemnie, co prawda w celu dodania nowych baz danych (domyślnie tylko MySQL) trzeba doinstalować sobie libhk-classes-*: gnosis:~# apt-cache search libhk-classes libhk-classes-dev - C++ library for database applications (development files) libhk-classes-mdb - MS Access driver plugin for hk_classes libhk-classes-mysql - MySQL driver plugin for hk_classes libhk-classes-odbc - ODBC driver plugin for hk_classes libhk-classes-paradox - paradox plugin for libhk-classes libhk-classes-postgres - PostgreSQL driver plugin for libhk-classes libhk-classes-sqlite - SQLite 2 driver plugin for hk_classes libhk-classes-sqlite3 - SQLite 3 driver plugin for hk_classes libhk-classes-xbase - XBase/DBase plugin for hk_classes libhk-classes15 - C++ library for database applications Które jak widać są, do obsługi baz takich jak np. Sybase idealnie działa odbc. ...