Gadacz, Gadacz for Konnekt, Skryptuś, GmailFS4TC, SabreToolbar, OOo2GD... trochę tych wtyczek popełniłem.
API dla PowerGG było miłe bo go praktycznie nie było. Pozwalało głównie na zakładanie haków [od hook ;-)] na procedury importowane z wybranych DLLek i to wszystko ;-) Wtyczki dzięki temu pisało się dość łatwo i szybko. Chcąc zobaczyć co wysyłało i odbierało Gadu-Gadu trzeba było przejąć procedury związane z siecią. Proste, łatwe i przyjemne, a na dodatek można się było nauczyć WinAPI :-)
Linka do dokumentacji nie posiadam, ale zawsze jakąś dokumentacją mogą być źródła Gadacza.
Dostępne dla C/C++ i Delphi.
API Konnekta to już inna para kaloszy... Jak dla mnie było zawsze zbyt skomplikowane. Przez to nie wiem nawet gdzie jest dokumentacja, choć jak pamiętam na swoje czasy była całkiem niezła.
Dostępne dla C++.
API Total Commander'a jest miłe, pozwala robić dokładnie to co jest potrzebne i pozwala zrobić to łatwo.
Dokumentacja dla wtyczek packerów, dla wtyczek systemu plików, dla wtyczek podglądu oraz wtyczek zawartości.
Dostępne dla Delphi i chyba C/C++.
API Firefoksa, czy Mozilli w ogólności to coś pięknego, start bywa trudny, ale później idzie pięknie. XUL + JavaScript są w stanie zdziałać cuda. Dzięki temu tutorialowi stworzyłem swoją pierwszą i jak na razie jedyną wtyczkę do Firofoksa w ciągu 1 dnia w ramach Sabre'owego Hack Day'a, a i tak z tego jednego dnia najwięcej zeszło mi na hackowanie wewnętrznych wyszukiwarek i obmyślanie jak zaimplementować różne nie UIowe rzeczy.
Dostępne dla JavaScript+XUL.
API OpenOffice.org to koszmar, może to dlatego że sprawia wrażenie jakby go w ogóle nie było, wtyczka wpina się niemal bezpośrednio w bebechy OpenOffice.org. A tam jak w każdej gigantycznej aplikacji [mało jest chyba większych aplikacji niż pakiety biurowe] olbrzymie ilości interfejsów, których można używać do różnych rzeczy... z tym, że tak sobie udokumentowane to wszystko jest ;-) Choć trzeba przyznać, że jakaś logika w tym jest... XStorable to np. interfejs pozwalający na zapisanie dokumentu, a XModifiable to interfejs pozwalający na sprawdzenie czy dokument został zmodyfikowany. Sens w tym jakiś jest. Ale brakuje łatwego wsparcia dla używania OpenOffice'owych okienek.
Najlepszą dokumentacją jest przeglądanie zawartości SDK OpenOffice.org.
Dostępne dla C++, Java, JavaScript, Pythona i wielu innych ;-)
Moje oczy sięgają teraz w kierunku Eclipse'a i jego API dla wtyczek :-)
Podobne postybeta
Eclipse vs. NetBeans
Mojo
<value /> - tag niezgody ;-)
No czemu? Czemu .NETowa DLLka to nie DLLka? ;-)
Teraz jest trudniej zacząć z programowaniem niż te 25-30 lat temu
czwartek, lutego 28, 2008
środa, lutego 27, 2008
My - Niedouczeni ;-)
Już w trakcie przygotowań do SCJP nachodziły mnie pewne refleksje co do tego co wypadałoby wiedzieć by programować w danym języku, a co zwykle się wie. Teraz w trakcie nauki do SCWCD utwierdzam się w swoich wnioskach.
Jako programiści w ogólności jesteśmy niedouczeni ;-)
Latami można pisać w Java'ie nie wiedząc dlaczego to:
się skompiluje i wypisze String, a to:
się nie skompiluje bez rzutowania null na String lub Integer.
Większość programów można stworzyć w Java'ie czy dowolnym innym języku obiektowym nie mając pojęcia co to jest polimorfizm i o co w nim chodzi ;-)
Wbrew pozorom to niedouczenie nie jest do końca takie złe. Zwykle z niewiedzy biorą się eksperymenty, a z eksperymentów powstaje prawdziwa wiedza i często nowe pomysły :-)
Jednak czasem to denerwuje ;-)
Choć chyba mniej niż ortodoksja. Hasła w stylu "instanceof jest zły", albo "wszystko musi być obiektem" brzmią świetnie w trakcie dyskusji, ale w praktyce bywa różnie ;-) Nie znoszę sterownia przepływem przy pomocy wyjątków, ale sam w kodzie OOo2GD mam kawałki jak ten:
a to i tak delikatny przykład, który się nie liczy ;-)
Ale w ogólności i masie jesteśmy niedouczeni... awangarda nowoczesnej technologii, z tym, że zamiast szczegółów zna ogólne mechanizmy ;-) trochę to przerażające ;-)
Ciekawe jest to, że w trakcie rekrutacji często wymagana jest znajomość pewnych specjalizowanych technologii i często przyjmuje się kogoś bo dużo umie, po czym zapada decyzja, że ten ktoś ma tworzyć oprogramowanie w języku którego nie zna ;-)
Często dlatego wybrano taki język bo "na etapie projektowania" zdecydowano, że to będzie najlepsza opcja.... co oznacza zwykle - bo mamy przykłady ;-)
W tym miejscu inne jest Google, które podobno bardziej ceni umiejętność nauki niż samą wiedzę.... choć z drugiej strony dobrze wtedy mieć rachunek prawdopodobieństwa w małym palcu, tak jak i być świetnym z algorytmiki ;-)
Banda niedouczonych kombinatorów z nas po prostu jest ;-)
Dlatego warto zdobywać certyfikaty, chociaż mamy papier, że byliśmy w stanie na czas egzaminu opanować rozsądne podstawy ;-)
Podobne postybeta
Sztuczki tropiciela błędów, part 4
Seks w ujęciu informatycznym ;-) - rozmnażanie ;-)
Java 8 nadchodzi....
clone() i Cloneable się mszczą ;-)
Javozagadka ;-)
Jako programiści w ogólności jesteśmy niedouczeni ;-)
Latami można pisać w Java'ie nie wiedząc dlaczego to:
public class A {
public static void a(String str) { System.out.println("String"); }
public static void a(Object str) { System.out.println("Object"); }
public static void main(String[] args) {
a(null);
}
się skompiluje i wypisze String, a to:
public class A {
public static void a(String str) { System.out.println("String"); }
public static void a(Integer str) { System.out.println("Integer"); }
public static void main(String[] args) {
a(null);
}
się nie skompiluje bez rzutowania null na String lub Integer.
Większość programów można stworzyć w Java'ie czy dowolnym innym języku obiektowym nie mając pojęcia co to jest polimorfizm i o co w nim chodzi ;-)
Wbrew pozorom to niedouczenie nie jest do końca takie złe. Zwykle z niewiedzy biorą się eksperymenty, a z eksperymentów powstaje prawdziwa wiedza i często nowe pomysły :-)
Jednak czasem to denerwuje ;-)
Choć chyba mniej niż ortodoksja. Hasła w stylu "instanceof jest zły", albo "wszystko musi być obiektem" brzmią świetnie w trakcie dyskusji, ale w praktyce bywa różnie ;-) Nie znoszę sterownia przepływem przy pomocy wyjątków, ale sam w kodzie OOo2GD mam kawałki jak ten:
private boolean storeToDisk() {
// OK, here we will have small sample of wrong behavior, this means exception driven control flow... but it's easier ;p
boolean result = true;
XStorable storable = (XStorable) UnoRuntime.queryInterface(
XStorable.class, m_xFrame.getController().getModel()) ;
try {
storable.store();
} catch (IOException ioe) {
result = false;
}
return result;
}
a to i tak delikatny przykład, który się nie liczy ;-)
Ale w ogólności i masie jesteśmy niedouczeni... awangarda nowoczesnej technologii, z tym, że zamiast szczegółów zna ogólne mechanizmy ;-) trochę to przerażające ;-)
Ciekawe jest to, że w trakcie rekrutacji często wymagana jest znajomość pewnych specjalizowanych technologii i często przyjmuje się kogoś bo dużo umie, po czym zapada decyzja, że ten ktoś ma tworzyć oprogramowanie w języku którego nie zna ;-)
Często dlatego wybrano taki język bo "na etapie projektowania" zdecydowano, że to będzie najlepsza opcja.... co oznacza zwykle - bo mamy przykłady ;-)
W tym miejscu inne jest Google, które podobno bardziej ceni umiejętność nauki niż samą wiedzę.... choć z drugiej strony dobrze wtedy mieć rachunek prawdopodobieństwa w małym palcu, tak jak i być świetnym z algorytmiki ;-)
Banda niedouczonych kombinatorów z nas po prostu jest ;-)
Dlatego warto zdobywać certyfikaty, chociaż mamy papier, że byliśmy w stanie na czas egzaminu opanować rozsądne podstawy ;-)
Podobne postybeta
Sztuczki tropiciela błędów, part 4
Seks w ujęciu informatycznym ;-) - rozmnażanie ;-)
Java 8 nadchodzi....
clone() i Cloneable się mszczą ;-)
Javozagadka ;-)
wtorek, lutego 26, 2008
White & Nerdy
Znane, stare, ale ciągle zabawne ;-)
Radzę się też przyjrzeć wzorkowi, który widoczny jest czasem w tle ;-)
Kto wie co to za wzór? ;-) [btw. z Wikipedii dowiemy się, że we wzorze jest błąd, choć przyznam się - nie zauważyłem :-)]
Podobne postybeta
"Plakat"
AST w akcji - zamieniamy źrodło w Java'ie w "rysunek" ;-)
"Obiektywność"
Google Docs & Spreadsheets
"Źródło Wszelkiego Zła?"
Radzę się też przyjrzeć wzorkowi, który widoczny jest czasem w tle ;-)
Kto wie co to za wzór? ;-) [btw. z Wikipedii dowiemy się, że we wzorze jest błąd, choć przyznam się - nie zauważyłem :-)]
Podobne postybeta
"Plakat"
AST w akcji - zamieniamy źrodło w Java'ie w "rysunek" ;-)
"Obiektywność"
Google Docs & Spreadsheets
"Źródło Wszelkiego Zła?"
poniedziałek, lutego 25, 2008
Kombatanctwo JavaScript'owe ;-)
Czego to się kiedyś nie pisało ;-)
Właśnie wszedłem na BuffyPedie i przypominałem sobie o moich "ekspertach" Buffy. Jeden z nich na podstawie cech bohatera starały się stworzyć listę bohaterów spełniających wymagane kryteria ;-), inny za to wyszukiwał postaci występujące we wszystkich wskazanych odcinkach, ostatni zaś potrafił wyszukać odcinki w których występowały wybrane postaci.
Niby nic, ale wszystko działo się i dzieje po stronie klienta w czystym [choć już nie najlepiej napisanym ;-)] JavaScript'cie :-)
Jeśli ktoś chętny to tutaj linki:
Wyszukaj postaci w BtVS na podstawie cech
Wyszukaj postaci na podstawie odcinków BtVS w których występowały
Wyszukaj odcinki w których występowały wskazane postaci
Btw. wszystkie te eksperty, a także praktycznie cała BuffyPedia bazują na 2 skryptach w JavaScript, które robiły i robią za "bazę danych" ;-)
W 2000 czy 2001 roku gdy tworzyłem BuffyPedie jedyny dostęp do sieci jaki miałem w planach to był modem, który mimo obiecywanego 56kbps nigdy nie łączył się z prędkością wyższą niż chyba 43kbps. Zresztą wtedy większość internautów tak korzystała z sieci, dlatego wykonując ukłon w kierunku użytkowników zdecydowałem, że lepiej raz pobrać duży [mający około 27kb skrypt], tak by później każda strona indeksu bohaterów miała około 500-600 bajtów... aż strach pomyśleć że teraz otwarcie strony głównej BuffyPedii powoduje pobranie 104KB, ale nadal tylko 21KB to HTML ;-)
Dla porównanie otwarcie tego bloga to na samym początku 300KB, a później dociąga się ponad drugie tyle w ramach ładowania rysunków do flashowego gadżetu.
Jakże mi wtedy [tj. w 2000 roku] brakowało możliwości pobrania w JavaScript czegoś z serwera.... choć to wtedy Microsoft wprowadził pierwowzór XMLHttpRequest, to ja o tym nie wiedziałem.... no i kto wtedy miał IE5 :-)
Ten post w ramach kombatanckich wspomnień ;-)
Podobne postybeta
"Doskonalenie" upolskawiacza ;-)
Pośpiech, BuffyPedia i Cool and Quiet
Działa :-)
Przepis na szybkie programy ;-)
Ponowne oglądanie Buffy
Właśnie wszedłem na BuffyPedie i przypominałem sobie o moich "ekspertach" Buffy. Jeden z nich na podstawie cech bohatera starały się stworzyć listę bohaterów spełniających wymagane kryteria ;-), inny za to wyszukiwał postaci występujące we wszystkich wskazanych odcinkach, ostatni zaś potrafił wyszukać odcinki w których występowały wybrane postaci.
Niby nic, ale wszystko działo się i dzieje po stronie klienta w czystym [choć już nie najlepiej napisanym ;-)] JavaScript'cie :-)
Jeśli ktoś chętny to tutaj linki:
Wyszukaj postaci w BtVS na podstawie cech
Wyszukaj postaci na podstawie odcinków BtVS w których występowały
Wyszukaj odcinki w których występowały wskazane postaci
Btw. wszystkie te eksperty, a także praktycznie cała BuffyPedia bazują na 2 skryptach w JavaScript, które robiły i robią za "bazę danych" ;-)
W 2000 czy 2001 roku gdy tworzyłem BuffyPedie jedyny dostęp do sieci jaki miałem w planach to był modem, który mimo obiecywanego 56kbps nigdy nie łączył się z prędkością wyższą niż chyba 43kbps. Zresztą wtedy większość internautów tak korzystała z sieci, dlatego wykonując ukłon w kierunku użytkowników zdecydowałem, że lepiej raz pobrać duży [mający około 27kb skrypt], tak by później każda strona indeksu bohaterów miała około 500-600 bajtów... aż strach pomyśleć że teraz otwarcie strony głównej BuffyPedii powoduje pobranie 104KB, ale nadal tylko 21KB to HTML ;-)
Dla porównanie otwarcie tego bloga to na samym początku 300KB, a później dociąga się ponad drugie tyle w ramach ładowania rysunków do flashowego gadżetu.
Jakże mi wtedy [tj. w 2000 roku] brakowało możliwości pobrania w JavaScript czegoś z serwera.... choć to wtedy Microsoft wprowadził pierwowzór XMLHttpRequest, to ja o tym nie wiedziałem.... no i kto wtedy miał IE5 :-)
Ten post w ramach kombatanckich wspomnień ;-)
Podobne postybeta
"Doskonalenie" upolskawiacza ;-)
Pośpiech, BuffyPedia i Cool and Quiet
Działa :-)
Przepis na szybkie programy ;-)
Ponowne oglądanie Buffy
Saturn :-)
Parafrazując Tweety'ego "Chyba widziałem Saturna" ;-)
Uszy, czyli pierścienie są widoczne, niemal modelowo, czyli są już dość płaskie, ale widać przerwę między nimi a planetą.
Tak to fajnie wyglądało, że wyniosłem nawet na balkon teleskop żeby sobie obejrzeć to "z bliska" :-) Nie kryje, że całą drogę z Wodzisławia do Krakowa to planowałem ;-)
Podobne postybeta
Biedny Pluton
LifeHack ;-) czyli jak trzymać tablety, laptopy i podobne ;-)
Wylazł był Ganimedes zza Jowisza ;-)
Jowisz na zdjęciu :-)
Jowiszowe oglądactwo ;-)
Uszy, czyli pierścienie są widoczne, niemal modelowo, czyli są już dość płaskie, ale widać przerwę między nimi a planetą.
Tak to fajnie wyglądało, że wyniosłem nawet na balkon teleskop żeby sobie obejrzeć to "z bliska" :-) Nie kryje, że całą drogę z Wodzisławia do Krakowa to planowałem ;-)
Podobne postybeta
Biedny Pluton
LifeHack ;-) czyli jak trzymać tablety, laptopy i podobne ;-)
Wylazł był Ganimedes zza Jowisza ;-)
Jowisz na zdjęciu :-)
Jowiszowe oglądactwo ;-)
niedziela, lutego 24, 2008
Status 302 i import arkuszy z Google Docs
Wczoraj próbowałem przewalczyć pobieranie z Google Docs arkuszy, nie jest to tak proste jak w przypadku dokumentów tekstowych, dla których wystarczy stworzyć tylko na podstawie danych z kanału Atom dla danego dokumentu link i pobrać go.
W przypadku arkuszy konieczne jest coś bardziej skomplikowanego. Z Atom'a znamy tylko id dokumentu w postaci ciągu liter [małych i dużych] i liczb. Znaki te występują w linku do arkusza który otwieramy korzystając z interfejsu web'owego. Otwieramy wtedy link takiej oto postaci:
http://spreadsheets.google.com/ccc?key=<id_documentu>&hl=en
Wg. tego co mówi Firebug w pliku pobranym z tego adresu znajduje się linia z identyfikatorem potrzebnym do pobrania prawdziwego arkusza [identyfikator ten to ciąg zaczynający się od literki "o" a następnie 4 dużych liczb [19-20 cyfrowych] oddzielonych kropkami]. Linia ta powinna wyglądać mniej więcej tak:
var TX_id = "o0357445185327443958148.5112419854153290097.06588844254185365881.61386767422517346334"
Znając ten identyfikator można stworzyć adres pod którym ukrywa się już nasz upragniony plik z arkuszem:
http://spreadsheets.google.com/fm?id=o0357445185327443958148.5112419854153290097.06588844254185365881.61386767422517346334&hl=en&fmcmd=13
I byłoby ślicznie, gdyby nie jedno "ale" ;-) Próba pobrania pierwszego adresu kończy się zwróceniem przez serwer statusu 302 Document Moved Temporarily ze wskazaniem na skomplikowany adres:
https://www.google.com/accounts/ServiceLogin?service=wise&passive=true&nui=1&continue=http%3A%2F%2Fspreadsheets.google.com%2Fccc%3Fkey%3D<id_documentu>%26hl%3Den&followup=http%3A%2F%2Fspreadsheets.google.com%2Fccc%3Fkey%3D<id_documentu>%26hl%3Den"
A jak widzę pobranie go z ustawionym nagłówkiem Authorization na klucz uzyskany w trakcie logowania do Google Docs prowadzi nas do strony logowania... pewnie informacje autoryzacyjne jadą po ciasteczkach....
Dlatego wydaje się, że nie da się tak łatwo pobrać arkusza Google Docs...... No może przy pomocy domyślnej przeglądarki :-)
Jeżeli ktoś zrozumiał coś z tego posta to gratuluje :-) To tylko takie wylewanie żalu ;-)
Podobne postybeta
Taki tam rant po Gradle i Dockerze ;-)
RDrive w działaniu ;-) czyli kolejny raport z prac nad Kolczatką ;-)
Docker image to taka kanapka ;-)
Telefon lepszym aparatem niż prawdziwy aparat ;-)
Czemu strony only for IE są złe.
W przypadku arkuszy konieczne jest coś bardziej skomplikowanego. Z Atom'a znamy tylko id dokumentu w postaci ciągu liter [małych i dużych] i liczb. Znaki te występują w linku do arkusza który otwieramy korzystając z interfejsu web'owego. Otwieramy wtedy link takiej oto postaci:
http://spreadsheets.google.com/ccc?key=<id_documentu>&hl=en
Wg. tego co mówi Firebug w pliku pobranym z tego adresu znajduje się linia z identyfikatorem potrzebnym do pobrania prawdziwego arkusza [identyfikator ten to ciąg zaczynający się od literki "o" a następnie 4 dużych liczb [19-20 cyfrowych] oddzielonych kropkami]. Linia ta powinna wyglądać mniej więcej tak:
var TX_id = "o0357445185327443958148.5112419854153290097.06588844254185365881.61386767422517346334"
Znając ten identyfikator można stworzyć adres pod którym ukrywa się już nasz upragniony plik z arkuszem:
http://spreadsheets.google.com/fm?id=o0357445185327443958148.5112419854153290097.06588844254185365881.61386767422517346334&hl=en&fmcmd=13
I byłoby ślicznie, gdyby nie jedno "ale" ;-) Próba pobrania pierwszego adresu kończy się zwróceniem przez serwer statusu 302 Document Moved Temporarily ze wskazaniem na skomplikowany adres:
https://www.google.com/accounts/ServiceLogin?service=wise&passive=true&nui=1&continue=http%3A%2F%2Fspreadsheets.google.com%2Fccc%3Fkey%3D<id_documentu>%26hl%3Den&followup=http%3A%2F%2Fspreadsheets.google.com%2Fccc%3Fkey%3D<id_documentu>%26hl%3Den"
A jak widzę pobranie go z ustawionym nagłówkiem Authorization na klucz uzyskany w trakcie logowania do Google Docs prowadzi nas do strony logowania... pewnie informacje autoryzacyjne jadą po ciasteczkach....
Dlatego wydaje się, że nie da się tak łatwo pobrać arkusza Google Docs...... No może przy pomocy domyślnej przeglądarki :-)
Jeżeli ktoś zrozumiał coś z tego posta to gratuluje :-) To tylko takie wylewanie żalu ;-)
Podobne postybeta
Taki tam rant po Gradle i Dockerze ;-)
RDrive w działaniu ;-) czyli kolejny raport z prac nad Kolczatką ;-)
Docker image to taka kanapka ;-)
Telefon lepszym aparatem niż prawdziwy aparat ;-)
Czemu strony only for IE są złe.
Straż Nocna
Ha! :-)
Tłumaczenie równie dobre jak oryginał.
Sam Vimes jak zwykle świetny - tym razem w roli rewolucjonisty.
Kupiłem w czwartek w EMPiKu w Galerii Kazimierz i stwierdzam, że warto było.
Jak zwykle u Pratchett'a o poważnych sprawach w trochę niepoważny sposób. O tym, że nie warto ufać tym, którzy głoszą, że chcą zaprowadzić prawo i sprawiedliwość, i tym którzy nadużywają słowa Lud [lub Naród], O tym, że rewolucja jest dla rewolucjonistów, a zwyczajnych ludzi interesuje tylko to co jutro zjedzą na obiad.
Dowiemy się też jak zaczął Reg Shoe, skąd Nobby w straży i o tym, że tylko paru może nosić gałązkę bzu w klapie.
I dowiemy się o synu Sama ;-)
Podobne postybeta
Freakonomia, czy jak kto woli Freakonomics
Java wygrała ;-)
Empik w Bonnarce ssie
Wycieczka po książki ;-)
Koordynacja
Tłumaczenie równie dobre jak oryginał.
Sam Vimes jak zwykle świetny - tym razem w roli rewolucjonisty.
Kupiłem w czwartek w EMPiKu w Galerii Kazimierz i stwierdzam, że warto było.
Jak zwykle u Pratchett'a o poważnych sprawach w trochę niepoważny sposób. O tym, że nie warto ufać tym, którzy głoszą, że chcą zaprowadzić prawo i sprawiedliwość, i tym którzy nadużywają słowa Lud [lub Naród], O tym, że rewolucja jest dla rewolucjonistów, a zwyczajnych ludzi interesuje tylko to co jutro zjedzą na obiad.
Dowiemy się też jak zaczął Reg Shoe, skąd Nobby w straży i o tym, że tylko paru może nosić gałązkę bzu w klapie.
I dowiemy się o synu Sama ;-)
Podobne postybeta
Freakonomia, czy jak kto woli Freakonomics
Java wygrała ;-)
Empik w Bonnarce ssie
Wycieczka po książki ;-)
Koordynacja
sobota, lutego 23, 2008
Historia Polski w 10 minut
Bawiąc się Flock'iem na Facebook znalazłem ciekawy filmik.
10 minutowa historia Polski.
Może trochę wyidealizowana wersja, ale ciekawa i warto obejrzeć :-)
Podobne postybeta
Wsiąść do pociągu byle jakiego ;-)
Myślenie = Szybka jazda
Z dawnych dni ;)
Duża grywalność
Google Earth Plugin in action ;-)
10 minutowa historia Polski.
Może trochę wyidealizowana wersja, ale ciekawa i warto obejrzeć :-)
Podobne postybeta
Wsiąść do pociągu byle jakiego ;-)
Myślenie = Szybka jazda
Z dawnych dni ;)
Duża grywalność
Google Earth Plugin in action ;-)
środa, lutego 20, 2008
Wsiąść do pociągu byle jakiego ;-)
To dziwne, ale czasami tęsknię za czasami gdy każdy mój tydzień pracy zaczynał się od wyjechania z Wodzisławia do Krakowa pociągiem o 3:35 rano :-) [pobudka o 2:20 ;-)]
Jakoś mi to tydzień organizowało ;-) A powroty w piątki [w pociągu spędzałem ponad 4 godziny, przejeżdżając jakieś 135 km ;-)] to był raj czytelniczy...
Dziwne, za czym człowiek potrafi czasem tęsknić ;-)
Btw. ten post jest pierwszym i zapewne ostatnim wprowadzonym z Flock'a ;-)
Blogged with the Flock Browser
Podobne postybeta
Trudne powroty ;-)
Raj pro-life - czyli co oznacza konstytucyjna ochrona "życia poczętego"
OpenOffice.org2GoogleDocs na Apple - pierwsze podejście ;-)
Historia Polski w 10 minut
Czytelniczy listopad
niedziela, lutego 17, 2008
Jak to rzeczy proste okazują się trudnymi ;-)
Od kilku dni bezskutecznie próbuje zrobić wydawało by się rzecz banalną - zmienić kod w rysunek.
Zamiast:
chciałbym dostać coś takiego:
I tak dalej, to samo z
Niby pikuś do zrobienia, skoro mam już kod w postaci statementów.... Sęk w tym, że jakoś nie mogę złamać tego miejsca pomiędzy drzewem kodu, a rysunkiem.
Czuję, że powinienem każdego takiego blokowego statementa traktować jak oddzielny bloczek, dzięki temu taki
Z czasem to złamię, ale wolałbym szybciej niż później ;-)
Jedną z prób o jakiej myślę jest załatwienie tego wszystkiego "od dołu", czyli najpierw rozrysować sobie statementy tak by mieć ich modele rysunkowe, wyznaczyć na nich najważniejsze punkty, a następnie sprobować je wszystkie zakodować tak by każdy z nich z osobna był zdolny do wyprodukowania kodu rysunku SVG. Następnym etapem byłaby próba odgryzienia temu głowy ;-) a w rzeczywistości stworzenia zagnieżdżania bloczków.... brzmi prosto, ale nie umiem sobie tego wyobrazić ;-) czyżby czas przyszedł na użycie TDD? ;-)
Podobne postybeta
Multiscreen world nie działa do końca ;-)
Eventual consistency....
Piszemy serwis społecznościowy w Google App Engine
Nie taka Java wolna jak ją opisują...
Architektura
Zamiast:
if (condition) {
doFirst();
} else {
doSecond();
}
chciałbym dostać coś takiego:
I tak dalej, to samo z
for
, while
, do-while
, switch
i innymi - docelowo całe metody w postaci rysunków. Niby pikuś do zrobienia, skoro mam już kod w postaci statementów.... Sęk w tym, że jakoś nie mogę złamać tego miejsca pomiędzy drzewem kodu, a rysunkiem.
Czuję, że powinienem każdego takiego blokowego statementa traktować jak oddzielny bloczek, dzięki temu taki
if
jak wyżej miałby tylko swoje wymiary: szerokość, wysokość oraz współrzędne punktów wejścia i wyjścia. Najgłębiej położony bloczek wpływałby na wymiary nadbloczka, ten znów na nad bloczek i tak w górę, aż cały rysunek byłby gotowy.... i tutaj się gubię :-) Z czasem to złamię, ale wolałbym szybciej niż później ;-)
Jedną z prób o jakiej myślę jest załatwienie tego wszystkiego "od dołu", czyli najpierw rozrysować sobie statementy tak by mieć ich modele rysunkowe, wyznaczyć na nich najważniejsze punkty, a następnie sprobować je wszystkie zakodować tak by każdy z nich z osobna był zdolny do wyprodukowania kodu rysunku SVG. Następnym etapem byłaby próba odgryzienia temu głowy ;-) a w rzeczywistości stworzenia zagnieżdżania bloczków.... brzmi prosto, ale nie umiem sobie tego wyobrazić ;-) czyżby czas przyszedł na użycie TDD? ;-)
Podobne postybeta
Multiscreen world nie działa do końca ;-)
Eventual consistency....
Piszemy serwis społecznościowy w Google App Engine
Nie taka Java wolna jak ją opisują...
Architektura
sobota, lutego 16, 2008
Nauka vs. Wiara ;-)
Przeglądając internet natrafiłem na taki oto ładny rysunek ;-)
Coś w tym jest ;-)
Podobne postybeta
To były czasy ;-)
Biedny Pluton 2
Bug or Feature?
Deska
Dzień Darwina
Coś w tym jest ;-)
Podobne postybeta
To były czasy ;-)
Biedny Pluton 2
Bug or Feature?
Deska
Dzień Darwina
piątek, lutego 15, 2008
Nauka, głupcze
Ciekawy artykuł na witrynie Newsweeka - Nauka, głupcze.
Czytając go przypomniało mi się masę miejsc gdzie różni "eksperci" biadolili, że szkoły wyższe nie kształcą do zawodu, tylko marnują czas na jakąś nieprzydatną nikomu teorię. Zawsze mnie to dziwiło. Bo ja chyba inaczej pojmuje studia wyższe. To nie są studia zawodowe, a otarcie się o Naukę. A że inżynier by być dobrym inżynierem potrzebuje tego otarcia to już inna sprawa.
W końcu kto by chciał iść do lekarza, który działa wg. sylabusa "katar, ból głowy i gardła - przepisz Bioparox", lepiej trafić do takiego który sprawdzi co może być przyczyną kataru, bólu głowy i gardła. Czyli przeprowadzi badanie. Do tej pierwszej rzeczy wystarczy felczer, taki technik w dziedzinie medycyny. Do drugiej potrzeba kogoś kto zna masę "niepotrzebnej teorii".
Dodatkowo ta "niepotrzebna teoria" służy do eliminacji ze studiów ludzi, którzy ich nie powinni skończyć, zresztą z tych samych powodów na maturze powinna być matematyka - jeżeli ktoś nie jest w stanie nauczyć się jej na poziomie pozwalającym skończyć liceum - nie powinien mieć matury. Inaczej matura będzie niż nieznaczącym świstkiem, zresztą już jest. Dyplomy wielu "uczelni" też już się tym stają.
Studia mają otworzyć głowę, a nie przygotować do pracy. Zresztą dziwna sprawa, większość tych którym studia otwierają głowę, później się świetnie w pracy sprawdza, a ci którzy się chcieli nauczyć zawodu już nie zawsze :-)
Podobne postybeta
Podobno przeziębienie trwa góra tydzień.... ;-)
Studia wyższe
Zakład MENu
Religia zamiast matematyki?
Przyroda...
Czytając go przypomniało mi się masę miejsc gdzie różni "eksperci" biadolili, że szkoły wyższe nie kształcą do zawodu, tylko marnują czas na jakąś nieprzydatną nikomu teorię. Zawsze mnie to dziwiło. Bo ja chyba inaczej pojmuje studia wyższe. To nie są studia zawodowe, a otarcie się o Naukę. A że inżynier by być dobrym inżynierem potrzebuje tego otarcia to już inna sprawa.
W końcu kto by chciał iść do lekarza, który działa wg. sylabusa "katar, ból głowy i gardła - przepisz Bioparox", lepiej trafić do takiego który sprawdzi co może być przyczyną kataru, bólu głowy i gardła. Czyli przeprowadzi badanie. Do tej pierwszej rzeczy wystarczy felczer, taki technik w dziedzinie medycyny. Do drugiej potrzeba kogoś kto zna masę "niepotrzebnej teorii".
Dodatkowo ta "niepotrzebna teoria" służy do eliminacji ze studiów ludzi, którzy ich nie powinni skończyć, zresztą z tych samych powodów na maturze powinna być matematyka - jeżeli ktoś nie jest w stanie nauczyć się jej na poziomie pozwalającym skończyć liceum - nie powinien mieć matury. Inaczej matura będzie niż nieznaczącym świstkiem, zresztą już jest. Dyplomy wielu "uczelni" też już się tym stają.
Studia mają otworzyć głowę, a nie przygotować do pracy. Zresztą dziwna sprawa, większość tych którym studia otwierają głowę, później się świetnie w pracy sprawdza, a ci którzy się chcieli nauczyć zawodu już nie zawsze :-)
Podobne postybeta
Podobno przeziębienie trwa góra tydzień.... ;-)
Studia wyższe
Zakład MENu
Religia zamiast matematyki?
Przyroda...
wtorek, lutego 12, 2008
12 stycznia - Dzień Darwina
Dziś przypada 199 rocznica urodzin Karola Darwina, z tego też powodu obchodzimy Dzień Darwina :-)
Jak tu już kiedyś pisałem teoria ewolucji zaproponowana przez Karola Darwina, to jedno z kluczowych odkryć naukowych, którego echa wpłynęły na cały świat, poczynając od nauki, przez politykę, gospodarkę, na stosunkach społecznych kończąc. Na dodatek ma tą zaletę, że jej podstawy są wprost bajecznie proste, a mimo to działa :-)
Więcej szczegółów i kilka artykułów związanych z Dniem Darwina można zaleźć na Racjonalista.pl.
Podobne postybeta
Rok Darwina czas zacząć :-)
Powiedz dziś "Część!" swojej wewnętrznej małpie ;-)
Dzień Darwina
Zostawmy 12 listopada jako dzień wolny na zawsze, jako święto ku czci "jakoś to będzie" ;-)
Jak sobie zjednywać ludzi?
Jak tu już kiedyś pisałem teoria ewolucji zaproponowana przez Karola Darwina, to jedno z kluczowych odkryć naukowych, którego echa wpłynęły na cały świat, poczynając od nauki, przez politykę, gospodarkę, na stosunkach społecznych kończąc. Na dodatek ma tą zaletę, że jej podstawy są wprost bajecznie proste, a mimo to działa :-)
Więcej szczegółów i kilka artykułów związanych z Dniem Darwina można zaleźć na Racjonalista.pl.
Podobne postybeta
Rok Darwina czas zacząć :-)
Powiedz dziś "Część!" swojej wewnętrznej małpie ;-)
Dzień Darwina
Zostawmy 12 listopada jako dzień wolny na zawsze, jako święto ku czci "jakoś to będzie" ;-)
Jak sobie zjednywać ludzi?
poniedziałek, lutego 11, 2008
A jednak parsuje ;-)
Kolega Marcin udostępnił mi dziś swoje źródła wtyczki do Eclipse'a, udało mi się ją uruchomić i zaczynam parsować pliki z kodem Java'y :-)
Dokładniej to same pliki sie parsują :-) a co najpiękniejsze parsują się do elementów zgodnych ze specyfikacją języka :-)
Teraz przede mną pierwsza próba, czyli konwersja źródeł w Java'ie do SVG ;-) Może nie całych źródeł, a tylko metod, ale to się okaże jeszcze.
Podobne postybeta
WebDAV i OpenOffice.org
OpenOffice.org2GoogleDocs 1.2.0 - OpenOffice.org i WebDAV
ePubGenerator v0.0.2
Narzędzia, wszędzie narzędzia...
EEE Storage :-)
Dokładniej to same pliki sie parsują :-) a co najpiękniejsze parsują się do elementów zgodnych ze specyfikacją języka :-)
Teraz przede mną pierwsza próba, czyli konwersja źródeł w Java'ie do SVG ;-) Może nie całych źródeł, a tylko metod, ale to się okaże jeszcze.
Podobne postybeta
WebDAV i OpenOffice.org
OpenOffice.org2GoogleDocs 1.2.0 - OpenOffice.org i WebDAV
ePubGenerator v0.0.2
Narzędzia, wszędzie narzędzia...
EEE Storage :-)
niedziela, lutego 10, 2008
Hermiona Granger ateistką! :-)
"Ależ to jest... bardzo przepraszam, ale to jest po prostu śmieszne! [...] W ten sposób można dowodzić istnienia czegokolwiek, jeśli jedyną podstawą wiary, że coś istnieje, jest niemożność udowodnienia, że to coś nie istnieje"
Gdy przeczytałem te słowa wypowiedziane w polskim tłumaczeniu ostatniego tomu Harry'ego Pottera doznałem déjà vu z czytania Boga Urojonego ;-)
Chyba zaczynam rozumieć czemu niektórzy uważają Harry'ego Pottera za "książkę szkodliwą dla młodych umysłów". W końcu kto by chciał żeby dzieci myślały?
Jakby jednak ktoś chciał to polecam zapoznać się z przygodami Harry'ego Pottera i obowiązkowo z cyklem Mroczne Materie Philipa Pullmana.
Podobne postybeta
HP7 bez manifestu ;-)
Mroczne Materie - polecam, gorąco polecam :-)
Déjà vu...
Kupujemy "Harry Potter and the Deathly Hallows" :-)
No ja czegoś nie rozumiem.. [już rozumiem]
J. K. Rowling, "Harry Potter i Insygnia Śmierci", tłumaczenie Andrzej Polkowski
Gdy przeczytałem te słowa wypowiedziane w polskim tłumaczeniu ostatniego tomu Harry'ego Pottera doznałem déjà vu z czytania Boga Urojonego ;-)
Chyba zaczynam rozumieć czemu niektórzy uważają Harry'ego Pottera za "książkę szkodliwą dla młodych umysłów". W końcu kto by chciał żeby dzieci myślały?
Jakby jednak ktoś chciał to polecam zapoznać się z przygodami Harry'ego Pottera i obowiązkowo z cyklem Mroczne Materie Philipa Pullmana.
Podobne postybeta
HP7 bez manifestu ;-)
Mroczne Materie - polecam, gorąco polecam :-)
Déjà vu...
Kupujemy "Harry Potter and the Deathly Hallows" :-)
No ja czegoś nie rozumiem.. [już rozumiem]
Szukając parsera Java&amp;amp;amp;amp;amp;amp;amp;amp;#39;y
Przyglądałem się dziś paru parserom Java'y.... Tragedia....
Jest tego trochę, ale ten najpotężniejszy będący częścią Eclipse'a jest praktycznie nie do uruchomienia poza Eclipse'm ;-), a taki AntLR sprowadza swoje działanie do stworzenia listy tokenów, które samemu trzeba pracowicie przerabiać....
A mnie się marzy coś w którym na wejściu daję źródło w Java'ie a na wyjściu dostaję model kodu, jak by jeszcze możliwe były zmiany w tym modelu i wygenerowanie z niego kodu to już w ogóle byłby wypas.....
Widać nie zostaje mi nic innego jak samemu napisać ;p
Podobne postybeta
Konferencja
Bawię się GPT4All
Applety Java&amp;amp;#39;y na PocketPC
Klasy .NET w Java&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;#39;ie....
Java&amp;amp;amp;amp;#39;y gięcie i cięcie ;-)
Jest tego trochę, ale ten najpotężniejszy będący częścią Eclipse'a jest praktycznie nie do uruchomienia poza Eclipse'm ;-), a taki AntLR sprowadza swoje działanie do stworzenia listy tokenów, które samemu trzeba pracowicie przerabiać....
A mnie się marzy coś w którym na wejściu daję źródło w Java'ie a na wyjściu dostaję model kodu, jak by jeszcze możliwe były zmiany w tym modelu i wygenerowanie z niego kodu to już w ogóle byłby wypas.....
Widać nie zostaje mi nic innego jak samemu napisać ;p
Podobne postybeta
Konferencja
Bawię się GPT4All
Applety Java&amp;amp;#39;y na PocketPC
Klasy .NET w Java&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;#39;ie....
Java&amp;amp;amp;amp;#39;y gięcie i cięcie ;-)
sobota, lutego 09, 2008
Historia czy Histeria? ;-)
Pani minister edukacji zapodała pomysł radykalnej zmiany programu w LO, chodzi w skrócie o to by w drugiej i trzeciej klasie LO uczeń uczył się tego co będzie mu potrzebne na studiach. Dzięki temu ktoś kto będzie chciał iść na medycynę będzie się uczył więcej fizyki, chemii i biologii, a nie będzie odbębniał historii czy geografii.
Co do pomysłu to mam mieszane uczucia, chociaż uważam że w szkołach powinno się dołożyć jednak przedmiotów ścisłych. Ale nie o tym tutaj chciałem pisać :-)
Najlepsze jest czytanie komentarzy wielce zbulwersowanych internautów, że jak to bez historii, przecież historia jest ważna, trzeba ją znać i tym podobne........ Trzeba, to fakt, ale i tak jej nie znamy.
Żyjemy raczej mitami, a nie historią. Przeżywamy histerię historii.
Podobno historie powinniśmy znać by nie powtarzać ciągle tych samych błędów, ale my sie raczej na lekcjach historii pławimy w błędach. Rozpamiętujemy jaka to Polska była wielka, jak to rozgromiła krzyżaków, czy turków, ale jakoś nie wyciągamy wniosków z tego czemu się później rozpadła. Pamiętamy tylko, że to wrogie knowania obcych. Wszyscy w koło knuli i knują, tylko Polska nie....... A historia najnowsza? To samo co za PRLu, tylko w drugą stronę. Jak kiedyś nieszczęściom winni byli obcy agenci z imperialistycznego zachodu czy zaplute karły reakcji, teraz wszystkiemu winni sowieci i komuniści. Kiedyś WiN mordował, teraz pisze się likwidował. Kiedyś Świerczewski był bohaterem, teraz draniem i alkoholikiem. Tylko ukraińskie bandy UPA są nadal złe.
Świetnym przykładem tego jest np. obecnie obowiązująca biografia Zygmunta Berlinga. Do 1939 świetny dowódca i patriota, aż tu nagle w 1940 staje się totalnym draniem i zaczyna współpracować z NKWD. W każdym bądź razie taka jest wykładnia IPN.
Btw. ciekawe, że nawet za PRLu nie powołano specjalnego instytutu z uprawnieniami prokuratorskimi w celu przerabiania historii na nową modłę ;-)
A jak historia ma wyglądać tak jak ją widzi IPN i mu podobni to chyba wolałbym żeby dzieciaki w szkole się uczyły zamiast tego nawet starożytnej greki, czy łaciny. To im mniej umysły zlasuje ;-)
Podobne postybeta
Strategiczny wybór miejsca w tramwaju - poradnik ;-)
Jebana ignorancja
Historia +1
Skąd się biorą źli i dobrzy nauczyciele? - Przemkowa teoria ;-)
Wojny religijne i jak ich uniknąć
Co do pomysłu to mam mieszane uczucia, chociaż uważam że w szkołach powinno się dołożyć jednak przedmiotów ścisłych. Ale nie o tym tutaj chciałem pisać :-)
Najlepsze jest czytanie komentarzy wielce zbulwersowanych internautów, że jak to bez historii, przecież historia jest ważna, trzeba ją znać i tym podobne........ Trzeba, to fakt, ale i tak jej nie znamy.
Żyjemy raczej mitami, a nie historią. Przeżywamy histerię historii.
Podobno historie powinniśmy znać by nie powtarzać ciągle tych samych błędów, ale my sie raczej na lekcjach historii pławimy w błędach. Rozpamiętujemy jaka to Polska była wielka, jak to rozgromiła krzyżaków, czy turków, ale jakoś nie wyciągamy wniosków z tego czemu się później rozpadła. Pamiętamy tylko, że to wrogie knowania obcych. Wszyscy w koło knuli i knują, tylko Polska nie....... A historia najnowsza? To samo co za PRLu, tylko w drugą stronę. Jak kiedyś nieszczęściom winni byli obcy agenci z imperialistycznego zachodu czy zaplute karły reakcji, teraz wszystkiemu winni sowieci i komuniści. Kiedyś WiN mordował, teraz pisze się likwidował. Kiedyś Świerczewski był bohaterem, teraz draniem i alkoholikiem. Tylko ukraińskie bandy UPA są nadal złe.
Świetnym przykładem tego jest np. obecnie obowiązująca biografia Zygmunta Berlinga. Do 1939 świetny dowódca i patriota, aż tu nagle w 1940 staje się totalnym draniem i zaczyna współpracować z NKWD. W każdym bądź razie taka jest wykładnia IPN.
Btw. ciekawe, że nawet za PRLu nie powołano specjalnego instytutu z uprawnieniami prokuratorskimi w celu przerabiania historii na nową modłę ;-)
A jak historia ma wyglądać tak jak ją widzi IPN i mu podobni to chyba wolałbym żeby dzieciaki w szkole się uczyły zamiast tego nawet starożytnej greki, czy łaciny. To im mniej umysły zlasuje ;-)
Podobne postybeta
Strategiczny wybór miejsca w tramwaju - poradnik ;-)
Jebana ignorancja
Historia +1
Skąd się biorą źli i dobrzy nauczyciele? - Przemkowa teoria ;-)
Wojny religijne i jak ich uniknąć
niedziela, lutego 03, 2008
Zła zima!
Zła!
Zimno jest, nie można wychodzić na balkon wieczorem, głowa boli, katar.... Zła zima!!!
Tyle dobrze, że śniegu jakoś nie ma, ale poza tym zima zła!
Byle do wiosny ;-)
Podobne postybeta
"Nadejszła" zima
Ja i mój zegarek chcemy wiosny!
Milion ton śniegu....
Przylazło....
Trzęsienie ziemii i poszukiwania wiosny ;-)
Zimno jest, nie można wychodzić na balkon wieczorem, głowa boli, katar.... Zła zima!!!
Tyle dobrze, że śniegu jakoś nie ma, ale poza tym zima zła!
Byle do wiosny ;-)
Podobne postybeta
"Nadejszła" zima
Ja i mój zegarek chcemy wiosny!
Milion ton śniegu....
Przylazło....
Trzęsienie ziemii i poszukiwania wiosny ;-)
Subskrybuj:
Posty (Atom)