Thursday, February 22, 2007
Śmietnik w źródłach
Kiedy spojrzałem na Kodera świeżym okiem i zobaczyłem ten bajzel, to się przeraziłem. W pierwszym momencie nie wiedziałem o co chodzi :(. Dlaczego? Nazwy zmiennych, które nie wiadomo do czego służą, brak komentarzy itd. Zabrałem się za nowe funkcje już z silnym postanowieniem o tworzeniu kodu jak najbardziej zwartego i przejrzystego. Jeśli ma to być aplikacja open source wypadałoby, żeby osoba postronna też ją zrozumiała.
Monday, February 12, 2007
Baza danych sqlite
Osobiście proponuję inne podejście, wydajniejsze a w perspektywie czasu wygodniejsze, mianowicie wykorzystanie systemów zarządzania SQL (Structured Query Language). Oprócz silników takich jak popularne MySQL czy PostgreSQL można wykorzystać mały i szybki sqlite.
Korzystanie z tego typu programów polega na pisaniu poleceń w języku SQL, za pomocą których wykonywane są operacje na bazach danych. Poniżej widnieje przykład bazy danych stworzonej za pomocą sqlite
Uruchomienie sqlite. Jeśli bazy nowabaza nie istnieje, zostanie taka utworzona
sqlite3 nowabaza
Utworzenie nowej tablicy w bazie. Trzy kolumny: zawierające nazwę zabytku, ilość i datę dodania
create table nowatablica(nazwa,ilosc,data);
Wstawienie wiersza do tablicy
insert into nowatablica values('ceramika',10,'2007-02-13');
Aby zapisać bazę do pliku należy wydać polecenia:
.mode column
.output nazwapliku
select * from nowatablica;
Po otwarciu pliku w dowolnym edytorze tekstu powinniśmy ujrzeć
nazwa ilosc data
------------- ------------ -----------------
ceramika 10 2007-02-13
Jak widać polecenia nie są szczególnie trudne do opanowania. Kiedy to się stanie sqlite może stać się potężnym narzędziem w naszych rękach. Ma jeszcze jedną zaletę. Jeśli zechcemy, aby dane były jakoś przetworzone, osoba która otrzyma taką bazę zapewniam, będzie zadowolona, bo oszczędzono jej masę czasu. Nie trzeba chyba wspominać, że dostęp do bazy można uzyskać z poziomu różnych aplikacji.
Saturday, February 10, 2007
ArcheoML
Language) , którego przeznaczeniem jest uniwersalne opisywanie danych archeologicznych,
głównie w celu przetwarzania ich cyfrowo.
Przy pomocy języka można prezentować następujące informacje
- opisy archeologiczne
- opisy geograficzne
- opisy językowe
- opisy rezultatów badań
Na stronie opisującej ArchaeoML wymienione jest kilkanaście typów
dokumentów różnego przeznaczenia, a także znaczniki służące do
opisywania danych archeologicznych.
Warto poszukiwać nowych form opisu danych archeologicznych, jak
najbardziej uniwersalnych z jednej strony, a z drugiej bardziej
nadających się do przetwarzania i prezentowania danych.
Wednesday, January 31, 2007
Wolne sterowniki w Linuxie
poinformował [1] na liście dyskusyjnej lklm [2] o propozycji
społeczności rozwijającej kernel. W zamian za udostępnienie informacji o urządzeniu,
programiści zobowiązują się stworzyć do niego otwarty sterownik, który zostanie dołączony do jądra, a co za tym idzie znajdzie się w większości
nowoczesnych dystrybucji GNU/Linuxa.
Inicjatywa jest korzystna dla obu stron, ponieważ producenci po pierwsze
zyskują wizerunkowo, po drugie wsparcie dla ich sprzętu gwarantują
twórcy otwartych sterowników. Pytanie tylko, czy wywoła wśród nich
odzew, biorąc pod uwagę to, że dotychczas ignorowali użytkowników
Linuxa, bądź tworzyli zamknięte sterwoniki?
[1] http://lkml.org/lkml/2007/1/31/276
[2] http://lkml.org/
----------------------
Artykuł ukazał się także w serwisie www.7thguard.net
Propozycje programów
linuksie, tak aby stał się przydatny w badaniach archeologicznych.
Poniżej prezentuję mało konkretną listę programów, które być może znajdą
się w linuksie dla archeologów:
- gis
- statystyka
- baza danych + program do zarządzania
- faktoryzacja zdjęć archeologicznych
- program do kalibracji C14
- skład tekstu
Nie jestem pewien, na co powinien być położony nacisk - prostota
używania, czy wydajność, bo te rzeczy często nie idą ze sobą w parze.
System naukowy
Niestety, czego by nie mówić, systemy z Redmont nie mają alternatywy w zastosowaniach naukowych, gdyż 99% aplikacji, szczególnie tych służących do obrabiania danych graficznych, są dostępne jedynie na niego. Niemniej warto mieć świadomość tego, że programiści open soruce udostępniają liczne programy, nie zawsze user-friendly, które jednak z powodzeniem mogą konkurować ze swoimi komercyjnymi odpowiednikami. Oczywiście trudno wymagać np. od humanisty umiejętności zainstalowania linuxa, czy bezproblemowego przestawienia się na odmienną filozofię używania tego systemu. Niemniej warto spróbować, bo gra idzie z jednej strony o pieniądze (wydawane na zakup Windowsa mogą być spożytkowane w bardziej racjonalny sposób), a z drugiej o bezpieczeństwo danych i niezależność od jednego producenta.
Archeologia, nauka operująca na granicy humanistyki i przyrodoznastwa, coraz częściej korzysta z przeróżnych aplikacji wspomagających interpretację danych. Na szczęście większość z nich można zastąpić wolnym oprogramowaniem, albo w najgorszym wypadku uruchomić przy pomocy Wine. Od jakiegoś czasu myślę o takim systemie, ale bynajmniej nie w formie nowej dystrybucji, ale rozszerzeniu już istniejącej.
Najlepszą bazą do tego wydaje się Debian, dlaczego:
- stabiloność
- bardzo duża liczba pakietów
- niezbyt skomplikowana instalacja.
Podobny projekt, ale bardziej nastawiony na nauki ścisłe i przyrodnicze - Debian Science. Jeśli by już doszło do realizacji pomysłu, przybrałby on zapewne formę instrukcji, w jaki sposób przekształcić zainstalowany system (niekoniecznie debian, może ubuntu?) na wersję dla naukowców. Dopóki nie wyjdzie Debian 4.0 (marzec - kwiecień) trudno napisać coś więcej
Sunday, January 28, 2007
Wolność popłaca
Temat jest o tyle ciekawy, zwłaszcza z perspektywy archeologii, jeśli z jednej strony wziąć pod uwagę utrudniony dostęp do publikacji (szczególnie dla osób spoza większych metropolii), a z drugiej możliwość dotarcia z porządną literaturą (naukową, czy popularno-naukową - to bez znaczenia) do szerszej publiczności. Bo przecież nie chodzi o to, by archeolodzy zamykali się w wieży z kości słoniowej i dyskutowali o chronologii czy typologii w wąskim gronie ~100 osób. Tym bardziej, że można zadbać o ochronę własnych praw autorskich, nie ograniczając przy okazji możliwości wolnego rozpowszechniania utworów, korzystając np. z licencji creative commons.
Saturday, January 27, 2007
Stallman
Dzisiaj trafiłem jednak interesujący post, umieszczony na blogu Finding Lisp, w którym autor opisuje swoje refleksje po spotkaniu z Richardem M. Stallmanem - założycielem i przewodniczącym Free Software Foundation. Przytoczę kilka cytatów, bo one świetnie odnoszą się do tego co osobiście sądzę o Open Source i Free Software. Przepraszam, że po angielsku, ale nie chce mi się tego tłumaczyć.
Richard's contention is that all the userland for Linux came from GNU and thus Linux is really just the kernel while the whole OS should be called "GNU/Linux." Whether that is true or not, the fact is, Linus built his own operating system and he should have the right to name it. If Free Software is truly as Free as Richard wants to claim it is, naming should be one of the things where the Freedom shows. Put another way, I have no issue if the FSF and GNU want to put out their own Linux distribution and name it "GNU/Linux," or even just "The GNU System," that's fine. I have big problems with Richard trying to convince me that I would tack "GNU" onto the front of "Linux" for some reason. I would worry that at any time Richard might claim that the use of GPL code might warrant changing the name of your application to "GNU/Foo."
I like open source and believe there are certain advantages to it, I specifically reject Richard's moral basis for Free Software. Richard tries to portray access to source code and redistribution for no charge as abstract moral rights that every person should have, something akin to "life, liberty, and the pursuit of happiness." Using proprietary software, Richard says, is to make an immoral choice. I don't buy it.
I don't think most of the developers or users of software see a philosophical, moral argument to made with respect to closed software.