Michał Moroz

Abecadło smoczątka, dziennik niecodzienny

Joggerowy bugfix

Najgorszą pracą programisty jest nie dodawanie nowych funkcjonalności, a ciągłe poprawianie dotychczasowego kodu. Czynność ta zabiera wiele czasu, jest monotonna, nie stawia przed programistą wyzwań, z którymi mógłby się zmierzyć, a przeszukiwanie kilkunastu stron kodu w celu znalezienia jednego nieprawidłowego założenia to zmora dowolnego większego projektu.

Dla większości te poprawki są niewidoczne, bo mało który użytkownik wie, jak działa wnętrze używanego przez niego oprogramowania. Jednak to dzięki nim oprogramowanie staje się stabilne i zyskuje swoją markę pośród użytkowników. Składa się na to mozolne klepanie kodu, ślęczenie nad nim przez kilka godzin dla wpisania dwóch, czy trzech linijek i ciągłe testowanie.

Tym bardziej jestem wdzięczny dla sparrowa, który na oficjalnym blogu Jogger PL 2 powiadamia o wprowadzaniu nowych łatek do systemu. A ostatnie dni płodne były: trzy poprawki w piątek, następnie jedna wczoraj i kolejne dwie także wczoraj.

Dziękuję bardzo! :)

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Wystrój bloga - wersja trzecia

Niniejszym ogłaszam premierę wersji trzeciej wystroju mojego bloga i zapraszam do wyrażenia swych opinii w komentarzach.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Tagokąt - mktags.js

Dlaczego tagokąt? Bo nigdy z niego chmurka nie wyjdzie - za kanciasty jest. Znajduje się niżej. Każdy, komu się spodoba, może też ściągnąć źródełko z mojego serwera i zaaplikować je u siebie. Wystarczy zaaplikować dowolny znacznik, którego id="tags", zawierający w sobie linki do poszczególnych kategorii z title="&CATEGORY_ENTRIES;".

Oczywiście, kategorie są porównywane względem największej z nich - dlatego nie można się dziwić, że kolor. czy wielkość może się nieco zmienić, chociaż wcale nie dodawaliśmy wpisów pod daną kategorią. Niestety, sprawi to kłopot starym Joggerowiczom (stażem oczywiście), którzy mają ileśset wpisów w kategorii 'Ogólne'. Ostatecznie, jeśli komuś będzie to potrzebne - mogę dopisać pomijanie określonych kategorii.

Podziękowania dla Gavina Christnera, którego implementacji AttachEvent użyłem w tym kodzie.

Update: Zapomniałem wspomnieć, że IE nie wspiera zmieniania stylów poprzez JavaScript i skrypt ten nie będzie działał w tej przeglądarce, mimo jego poprawności.

Update: Nowa wersja skryptu obsługuje już IE.

Update: Dokładniejsze instrukcje znajdują się na joggerowej wiki pod adresem http://wiki.jogger.pl/index.php/Tagowa_chmurka.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Szablon 2.0

Disclaimer: Związek z pewnym ostatnio dość modnym tematem całkowicie zamierzony. Ale nie robiłem rounded corners. ;)

Co poprawiono?

Po pierwsze: strona jednocześnie waliduje się i wyświetla poprawnie w przeglądarkach opartych na silniku Internet Explorera, Gecko, Opery i KHTMLu. W celu zapewnienia kompatybilności IE użyto dwóch hacków (zmiana hasLayout oraz użycie height zamiast min-height). ;)

Po drugie: przepisano commlink, żeby obsługiwał trackbacki, czego efekt można zobaczyć np. w tym wpisie. Został również przeniesiony nieco na bok - mam nadzieję, że nikt nie będzie mi miał tego za złe.

Po trzecie: podpalono feedy rss. Jeśli ktoś czyta rss z tego bloga, proszę o uaktualnienie adresu.

Po czwarte: pobawiłem się z ficzerami, które udostępnia Google Adsense i dodałem wyszukiwarkę oraz przycisk "Ściągnij sobie Firefoksa z Srebrną Kitą Google'a", czy jakoś tak.

A jak wam się podoba?

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Testując trackback

Jogger - serwis, dla którego napisano już kilka hacków, workaroundów i innych ulepszeń, doczekał się kolejnego, tym razem na naprawdę dużą skalę. Oto wkracza Trackback, najprościej mówiąc powiadamianie o czyichś wpisach na temat Twojej notki.

Gratulacje dla Pucka, który stworzył całą tą dziwną machinerię, by poprawić komfort życia zwykłych joggerowiczów.

A teraz potestuję sobie to cudo. ;)

Apdejt: TODO - JS modyfikujący CSS trackbacków. I małe poprawki w szablonie oczywiście.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Poziomy joggera

Patrząc chociażby na szablony (najprostszym sposobem - kto ma zaznaczony poziom 0, a kto nie, szczególnie w wypadku własnych produkcji) to duża ilość ludzi używa wpisów na przeróżnych poziomach. Opisują sprawy te mniej i bardziej prywatne, mniej lub bardziej ważne. Niby bardzo przydatna rzecz, ale bardzo mi przykro, nie rozumiem tego.

W mojej koncepcji świata, weblog ma przekazywać informacje. Są one różnorodne, mogą traktować o tematach ogólnych lub koncentrować się na określonym przypadku. Zwykle łączy je jedna cecha - subiektywność prowadzącego i jego poglądów. Jeśli miałbym więc używać poziomów jako ogranicznika, to po co w ogóle mi tym się parać? Czyż nie szybciej użyć bardziej nasuwającego się rozwiązania i, jeśli np. potrzebujemy coś wyrzucić z siebie lub przekazać, spotkać się irl lub chociażby napisać maila? Gwarantują one większą i bardziej nieskrępowaną możliwość wymiany poglądów na dany temat.

Gdy sto osób czyta wpisy na poziomie x, to jest duża szansa, że i tak dotrze coś do niepowołanych uszu (oczu?), więc czemu właśnie x, a nie 1? Blokowanie przez dodawanie nieblokowanych to dziwna rzecz dla mnie.

Wreszcie - gdy piszemy tylko dla siebie, to czy nie lepiej przestać zapychać komuś serwer i zamiast publicznej usługi używać pióra i arkusza papieru? Generalizując, nie ma wielu różnic między tymi dwoma rodzajami prowadzenia pamiętniczka.

Jestem skrzywionym człowiekiem, czy tylko ekshibicjonistą?

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Ale się porobiło

Trzykropka zaatakowana została przez sparrowa. Jeśli dobrze rozumiem kontekst, zaczęło się poprzez odrzucenie niektórych prac na logo joggera przez głównego dewelopera tegoż serwisu. Dalej potoczyło się szybko - wpis Trzykropki, aktualnie usunięty lub przeniesiony na jakiś wysoki poziom, poprzez wzgląd na jej wcześniejszą twórczość (gdyż osobiście nie zdążyłem poznać), był w mojej opinii tylko żartem. Ujął to dobrze Patrys.

Czy tylko ja nie widzę nic strasznego w poście Trzykropki? Napisała na czerwono "strajk," co wygląda raczej jak dowcip w stylu tupnięcia nogą, niż jak atak na suwerenność władzy.

Źródło.

Pomijając aspekty moralne można wysnuć dwa wnioski.

Pierwszy: Wydarzyło się zbyt wiele, jak na skalę popełnionych błędów. Dziwię się, że sprawa się tak rozdmuchała, skoro właściwie nie było to nic poważnego.

Drugi: Masa ludzi lubi żerować na czymś takim. Jeśli jest tylko sytuacja, będą robić wszystko, aby zaognić sprawę. W pewnym momencie, czytając komentarze, miałem wrażenie, że ktoś założył partię 'popierających sparrowa'. W końcu powstał bajzel, i chaos przypominający bandę niesfornych urwisów, a nie społeczność joggerową, którą to się tak szczycimy.

Dlaczego nikt nie pomyślał o najprostszym, a zarazem najtrudniejszym rozwiązaniu - pojednaniu i zażegnaniu sporu? Czyż to aż takie trudne? Obie pokrzywdzone strony poczułyby się o niebo lepiej.

Może to głupie, ale całe te nerwy, podburzanie i stres skojarzyły mi się z narkomanami i alkoholikami zażywającymi, by pozbyć się tych negatywnych emocji. Dziwne...

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Chciałem dobrze

... próbując ulepszyć mój javaskrypt, aby działał w IE. I tyle. Niczego nie udało mi się zrobić - nie wiem, co jest powodem błędu, a informacja "Przeglądarka nie obsługuje tego obiektu, linia x, wiersz y" niewiele pomaga, gdy okazuje się owa linia pustą, przepraszam - zawierającą pojedynczy \t (tabulator).

Pozostaje mi chyba tylko designhappy.org i namawianie nowych osób na inną przeglądarkę albo dalsze (skuteczne?) zmagania z tą przeglądarką. Jedynie statystyki są nieco pocieszające.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

XFN i CSS

Dzięki możliwościom CSS 2.1 można uzyskać bardzo duże wsparcie (oraz ciekawe rezultaty wizualne) dla XFN (strona projektu). Postanowiłem się tym zająć, czego efekty - na razie dość prymitywne - widać np. w menu Czytani.

Jednak bez legendy nawet najlepsza mapa nie zostanie odczytana przez wszystkich. Dlatego też zamieszczam tu krótki opis, co i w jaki sposób oznaczyłem. Będę starał się uaktualniać tą notkę na bieżąco w miarę postępu moich prac nad szablonem.

Specyfikacja.

met
contact
friend
muse
sweetheart

Komentując - kombinuję z moim szablonem, a z drugiej strony nie chce mi się nawet zmienić antypikseli. ;]

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Jogger tweak

Po przeczytaniu wpisów Pimp My Jogger na blogu Riddle'a oraz Favikonki przy podpisach na blogu Pawła Ciupaka również skłoniłem się do ulepszania jogga poprzez różne ficzery.

Rozbudowałem nieco skrypt tworzący permalinki do komentarzy. Dobudowałem boczne menu i przechowywanie informacji o obejrzanych i nieobejrzanych komentarzach. Niestety, kod nie jest zbyt przenośny - większość musiałem napisać konkretnie pod moją konstrukcję szablonu. Ale ktoś znający się na rzeczy nie powinien mieć zadnych problemów z przeniesieniem tego do siebie.

O ile ktoś jednak chciałby zastosować to u siebie - podaję techniczne dane.

Table Of Comments, wersja ohohoho, albo i mniejsza - specyfikacja.
W szablonie komentarzy wstawiamy skrypt w sekcji head.
<script type="text/javascript" src="/custom/dragonee/files/commlink-toc.js"></script>
Tag <COMMENT_NICK/> musi być oznaczony następującym tagiem:
<tag class="commentNick"><COMMENT_NICK/></tag>
W podobny sposób oznaczamy miejsce, za którym mają zostać dodane permalinki:
<tag class="commhead"> zawartość </tag>
Następnie w dowolnym miejscu wstawiamy sobie znacznik div:
<div id="toc"></div>
Kod w powyższym divie generuje drzewko o takim wyglądzie:
<div class="tocmenu">
	<div id="oldcomm" class="menuitem">
		<div class="items">
			<a>
	<div id="newcomm" class="menuitem">
		<div class="items">
			<a>
Ciasteczka wyglądają tak:
name = eid
value = ilość komentarzy
expires = 7 dni

To chyba wszystko, co warto wiedzieć, aby skrypt poprawnie zadziałał. I tak będę pewnie jeszcze kilka razy poprawiać, aby uzyskać większą przyjazność dla uzytkownika. ;]

Apdejt: Już widzę, co pierwsze do poprawki - użyć jakiegoś tekstu zastępczego w przypadku braku komentarzy.

Apdejt 2: Poprawiłem błąd z pustym menu przy braku komentarzy. Teraz się zupełnie nie wyświetla w tym przypadku. Dodatkowo wszelkie klasy i identyfikatory umieściłem w zmiennych na początku skryptu, tak więc dopasowywanie będzie odrobinę prostsze. Na razie nie będę opisywać zmiennych - sądzę, że da się wywnioskować ich przeznaczenie z powyższej specyfikacji.

Tak z zupełnie innej beczki - Polska Żeńska Siatkarska Reprezentacyja ma już na pewno srebrny medal. :D

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Wystawiam szablon

Bynajmniej nie na aukcję. ;)

Za prośbą Cenebrisa, wreszcie ruszyłem kuprem i dopracowałem mój szablon. Na oko nie powinien zawierać błędów, ale w końcu jestem tylko człowiekiem.

Blablabla, CC 2.5: Attribution - ShareAlike, blablabla, miło by było, jeśli jednak powiadomisz mnie na jid/mail, że używasz mojego szablonu. Od razu się robi człowiekowi cieplej na sercu. ;]

To chyba wszystko.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Szablon prawie gotowy- cz. 2 :)

Dzisiaj, tak jak zapowiedziałem, wstawiłem kilka rzeczy do menu wymagających ingerencji w kod - między innymi wygodniejsze logowanie i wylogowywanie. Z tego powodu mogę ogłosić, że mój szablon przyjął wersję 0.1.2. Na razie zostanie tak jak jest, jak skompletuję listę ważnych linków to ją wrzucę, ale to wszystko da się zrobić z naszego wypasionego panelu sterowania. :P A może kiedyś wystawię go jako Open Source.

Ostatnio nie mam czasnu na bawienie w Internecie, robię z ojcem mały remoncik w domu, co zajmuje około 12 godzin dziennie - zdarzenia, które nie zależą od nas. Ale dobrze, oderwę się od nieustannego siedzeia przed komputerem i poprzebywam troszkę czasu na świeżym powietrzu, a co się nauczę/wyćwiczę, to moje. ;)

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Szablon prawie gotowy

Kilka godzin pisałem ten szablon z dokumentacją w przeglądarce, ale wynik jest dość zadowalający. Co prawda, na razie to dopiero wczesna wersja, ale już działa i, o ile sprawdzałem, walidowała się. Jutro mam zamiar dodać resztę, czyli linki, silkscreenowe buttony (wie ktoś, jak to się naprawdę nazywa?), oraz inne fikuśne rzeczy.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane
Na górę
Reklamy Google