Archiwum dla 'PROGRAMOWANIE' Kategoria

Tylko Wordpress

03.03.2008

Skąd się wziął ten blog i co w nim będzie? Postanowiłem zebrać razem trochę tekstów porozrzucanych po internecie, prezentacji z konferencji oraz nigdzie nie spisanych doświadczeń związanych z tworzeniem oprogramowania. Czasem także coś mi do głowy przyjdzie, co może się komuś przydać, także postanowiłem mieć swój własny kawałek sieci.

Generalnie to bardzo podziwiam ludzi, którzy mają czas na tworzenie swoich stron domowych z obrazkami dziesiątkami podstron, itp. Ja postanowiłem pójść po najmniejszej linii oporu i założyć prostego bloga (myślałem też o wiki, ale wikitext budzi we mnie grozę).

Pojawił się problem, jakie oprogramowanie wybrać (sam nic nie zamierzałem pisać, jeszcze nie zwariowałem). Przejrzałem kilka rzeczy pisanych w różnych technologiach i w zasadzie jedynym sensownym rozwiązaniem okazał się Wordpress.

Zacząłem się zastanawiać, co akurat Wordpress-a czyni takim dobrym kawałkiem oprogramowania. Składa się na to kilka elementów.

  • Dobór technologii do zastosowania. Blog jest bardzo prostą aplikacją webową, nie ma sensu wyciągać do jego konstrukcji armat (Java), albo używać języka o jakiś szczególnie wyrafinowanych możliwościach (np. Ruby). Dodatkowo w polskich warunkach dochodzi kwestia łatwości znalezienia hostingu. Dlatego PHP jest optymalnym rozwiązaniem.
  • Oprogramowanie robi tylko to, co ma robić. Wordpress (na szczęście) nie próbuje być niczym więcej, niż prostym silnikiem do bloga. Nie ma tam funkcjonalności CMS-a, wymyślnego systemu tworzenia szablonów, itp.
  • Instalacja/konfiguracja. Blog to zazwyczaj poboczny element działalności przeciętnej osoby. Nawet jeśli ktoś ma spore umiejętności programistyczne, to rzadko ma ochotę szarpać się akurat z blogiem. Instalator Wordpress-a po prostu go instaluje, nie robi dziwnych rzeczy w rodzaju sprawdzania ustawień PHP, zainstalowanych bibliotek, dostępnej pamięci itp., co jest zmorą różnego rodzaju wynalazków PHP-owych (mój ulubiony sprawdzian, to czy jest ustawiona flaga register_globals czy nie).

Znalazłem też bardzo przyjemny szablon bloga, White as milk. Musiałem go trochę zmodyfikować, bo miał dla mnie zbyt wąską kolumnę na treść. Poza tym potrzebowałem jakiegoś przyzwoitego narzędzia do formatowania i kolorowania składni kodu na stronie. Idealna okazała się biblioteka Syntax Highlighter. Działa wyłącznie po stronie klienta (100% JavaScript) i jest prosta w użyciu. Zmodyfikowany przeze mnie szablon z podświetlaczem składni można sobie ściągnąć tutaj: wersja angielska lub wersja polska.

Użycie podświetlacza jest wygodne, wstawiam:

<pre name="code" class="Java">
public class Test{
  public static void main(String[] args){
    //...
  }
}
</pre>

i dostaję

public class Test{
  public static void main(String[] args){
    //...
  }
}

Wszystko Evil

09.22.2006

Pojawił się kolejny artykuł Allena Holuba z serii “Coś tam coś tam is Evli”

Na pierwszy ogień poszło dziedziczenie (Why extends is Evli), potem stosowanie akcesorów i mutatorów, czyli getterów i setterów ( Why getter and setter methods are evil). Teraz przyszedł czas na XML-a Just Say No to XML.

Holub pisze, że do przechowywania danych to jeszcze wolno używać XML-a, nie wolno go za to używać jako “język programowania” (he, he).

Na przykład nie wolno XML-a używać jako języka skryptowego, tak jak w ANT-cie. Jako języka opisu testów (jak w TestNG) albo do definicji encji (jak w Hibernacie). Nie wiem dlaczego Holub uważa, że w którymkolwiek z tych zastosowań XML jest używany jako język programowania. Co ma u diabła konfiguracja TestNG, mówiąca, że ma być wykonywany w ramach zestawu testów X test z klasy Y z językiem programowania?

Najzabawniejsze jest to, że temat artykułu sugerowany w tytule zostaje porzucony już w 2 akapicie na rzecz ordynarnej reklamy jakiejś książki o pisaniu kompilatorów (zacne zajęcie, skąd innąd).

Teza jest taka, że ci wszyscy, którzy używają XML-a robią to, bo są ciemni oraz leniwi i nie potrafią na swoje potrzeby utworzyć języka programowania, napisać do niego kompilatora albo chociaż interpretera i tego używać zamiast przeklętego XML-a.

Doskonały pomysł, marzę o tym, żeby do każdego z wymienionych narzędzi był oddzielny język programowania, którego składni by się trzeba nauczyć (najlepiej, żeby była taka jak w LISP-ie ;)). Wtedy mógłbym zająć się spokojnie robieniem notatek: używam TestNG, linie kodu trzeba zakończyć średnikiem; używam ANT-a, linię kodu kończę przecinkiem; używam Hibernate, muszę pamiętać o wcięciach w kodzie, itd. itp. Po prostu bajka.

Tak to wygląda, że Autor jest raczej teoretykiem programowania niż praktykiem i nie czuje, co w trawie piszczy.

Wpis umieszczony na portalu JDN [link]