Ten mini artykuł powstał na podstawie wpisu z bloga Nuna Pinheiro.
Jak w kilku prostych krokach uzyskać ładniejsze czcionki w KDE:
- Otwórz ustawienia systemowe (systemsettings)
- Przejdź do Wygląd→Czcionki
- Ustaw "Wygląd czcionek (antyaliasing)" na "Włączone"
- Kliknij "Konfiguruj"
- Ustaw "Styl hintingu" na "Pełny" i kliknij "OK"
- Kliknij przycisk "Ustaw wszystkie czcionki..."
- Zaznacz pole "Czcionka", wybierz z listy "Liberation Sans" i kliknij "OK"
- Daj sobie trochę czasu na przyzwyczajenie do nowych ustawień.
Szczególnie ważne są 2 ostatnie kroki. Liberation Sans, to naprawdę dopracowana czcionka i moje obserwacje wskazują, że wyświetla się znacznie lepiej niż np. DejaVu Sans (Nie chodzi o to, która jest ładniejsza, ale o sposób wyświetlania liter na monitorze). Dodatkowo po zmianie czcionki mogą się na początku wydawać jakieś dziwne, ale już pod koniec pierwszego dnia powinieneś je docenić.
W ubiegłym tygodniu miałem przyjemność wybrać się na fantastyczny wykład dr D. Richarda Hippa pt. "An Introduction To SQLite".
Do tej pory do baz danych podchodziłem raczej z rezerwą do czego z pewnością przyczyniły się doświadczenia w które wzbogaciła mnie moja uczelnia. Pierwszym silnikiem bazodanowym z jakim przyszło mi pracować był Oracle i abstrahując od tego, jak fantastyczne pewnie jest to narzędzie w zastosowaniach profesjonalnych, mnie, początkującego amatora, ten DBMS w połączeniu z dziwacznym i chaotycznym interfejsem www po prostu przytłoczył (zresztą o perypetiach związanych z jego konfiguracją już kiedyś tu pisałem). A co gorsze moje "praca" z bazą danych polegała wyłącznie na konstruowaniu coraz bardziej wymyślnych zapytań w zasadzie bez śladu wiadomości do czego mi konkretnie miałoby się to przydać.
Drugim kontaktem z strukturalnymi bazami danych był dla mnie MySQL użyty przy okazji w projekcie robionym w PHP i tu już w zasadzie było lepiej, bo wreszcie udało mi się z tego całego SQL-a zrobić jakiś pożytek, ale ciągle jakoś brakowało mi w tym wszystkim elegancji (mały projekcik, a do niego potężna, onieśmielający silnik bazodanowy wymagający magicznych konfiguracji, uruchamiania serwerów itd.).
Jak zatem nie trudno się domyślić po tych doświadczeniach nie pałałem specjalną miłością do baz danych, więc na sam wykład zabrałem ze sobą pewną dawkę dystansu:). Na szczęście szybko poszedł on w niepamięć, bo dr Hipp jest naprawdę dobrym wykładowcą w zasadzie w każdym sensie (łącznie z tym, że jego sposób mówienia/bycia nie był w żaden sposób irytujący, co niestety czasami zdarza się niektórym innym, dobrym pod innymi względami, mówcom). Sam wykład również był bardzo interesujący o czym można się przekonać przeglądając materiały z prezentacji (po angielsku)) dostępne na stronie LinuxAcademy. Niestety bez komentarza prowadzącego nie są one w 100% zrozumiałe. Mam nadzieję, że w ich rozjaśnieniu choć trochę pomoże poniższy, nieco telegraficzny, opis wykładu.
Wykład rozpoczął się od tego czym jest SQLite oraz czym jest SQL sam w sobie.
Pewnym zaskoczeniem była tu informacja, że SQL jest najszerzej znanym językiem
"programowania" na świecie (do tej pory stawiałem raczej na HTML). Potem
było trochę o zaletach SQL z czego najbardziej zachęcającą była redukcja
koniecznego do napisania kodu (a więc i błędów!) przy jego stosowaniu.
Następnie zaprezentowano całe zapytanie SQL używane przez Firefoksa w jego
awesomebar (slajd nr 9 i 10).
Po wstępie prezentującym samego SQL przyszedł czas na prezentację zalet SQLite
z czego mi najbardziej spodobały się pierwsze 2 punkty ("Serverless"
i "Zero-administration") przy czym zaleta "Zero-administration" została
wyjaśniona na przykładzie telefonów komórkowych, gdzie, jak pewnie niektórzy
wiedzą, w systemie Symbian (głównie Nokia) używany jest właśnie SQLite
i gdzie pomimo posiadania takiej prywatnej bazy danych nie musimy
przy kupowaniu telefonu zatrudniać administratora baz danych do jej obsługi:).
Slajd 21 prezentuje schemat aplikacji, która doprowadziła dr Hippa
do stworzenia SQLite, więc nie warto nad nim główkować próbując zrozumieć
o co w nim chodzi (no chyba, że ktoś lubi), a slajd 22 pokazuje komunikat
dzięki któremu mamy dzisiaj SQLite:D ("byłem budzony w środku nocy
z pretensjami, że moja aplikacja nie działa, chociaż wina leżała po stronie
administratorów bazy danych").
W dalszej części prelegent pokazał jak widzi SQLite w odniesieniu do "dużej"
konkurencji na przykładzie studia muzycznego i przenośnego odtwarzacza
muzycznego (większość użytkowników muzyki nie potrzebuje studia nagraniowego).
Serce publiczności zdobył slajd 31 informujący, że SQLite nie ma być
konkurencją dla Oracle, ale raczej dla funkcji fopen():D.
Potem omówiono dalszy ciąg zalet SQLite i zastosowania w których jest zalecany
przez twórcę, w tym niewielki rozmiar silnika (w najlepszym przypadku
całość zajmuje 272 KB) i łatwość jego włączenia do własnego kodu zarówno
od strony technicznej (2 pliki - sqlite3.c i sqlite3.h i brak dodatkowych
zależności), jak i prawnej (produkt znajduje się w domenie publicznej).
Przy okazji dr Richard wspomniał, że m.in. we Francji i Niemczech coś takiego
jak domena publiczna nie istnieje i firmom stamtąd muszą sprzedawać
oprogramowanie z licencją. Jeden ze słuchaczy twierdził, że w Polsce jest tak
samo, ale szczerze mówiąc nie bardzo chce mi się w to wierzyć.
Reszty wykładu pozwolę sobie nie streszczać, bo to głównie informacje techniczne (w tym przykłady w języku C) do zrozumienia których powinny wystarczyć same slajdy, a w pozostałych przypadkach z łatwością można się domyślić o co chodzi.
W dniu dzisiejszym światło dzienne ujrzała nowa wersja mojej strony. Choć z wyglądu prawie niczym się nie różni, to poważne zmiany zaszły, jak to się mówi, "pod maską".
Po pierwsze w końcu zrezygnowałem z pisanego 5 lat temu na kolanie BBHP (Bashowy Boski Hypertext Preprocesor;-)) na rzecz "koszernego" PHP. Co nie znaczy, że w 100% używam PHP tak, jak twórcy jego przykazali:]. Przy okazji tej zmiany poprawiłem kilka rzeczy, zrezygnowałem z wszelkich zewnętrznych rozwiązań (licznik) na rzecz własnych i wykonałem trochę poprawek i usprawnień.
Drugą, równie ważną, a może i ważniejszą, jest migracja całości strony z HTML 4.01 Transitional na XHTML 1.0 i to w wersji Strict. Jest to zmiana nieodwracalna, bo XHTML Strict uzmysławia, jak dalece, na jego tle, nieelegancki był jego poprzednik.
Niedogodnością związaną z premierą nowej wersji są problemy ze starą, a mówiąc prościej stare linki przestały działać, bo mój darmowy hosting, w przeciwieństwie do jego płatnej wersji, nie pozwala na użycie RewriteRule ani Redirect w plikach .htaccess Apache'a. Trudno, trzeba się będzie przemęczyć.
Zapraszam do przeglądania strony, wyszukiwania i zgłaszania błędów. A jutro zapraszam po nowe sterowniki od Realteka!
linux-rtl8187se-modules-1023.2@2.6.27.12.15.deb (Intrepid)
źródła r1023-1118 od Realteka
Paczka dla Ubuntu z kernelem 2.6.27.10