wtorek, września 30, 2008

SSD a programowanie

Jakiś czas temu opisywałem tu moje eksperymenty mające na celu ustalenie trwałości dysków SSD w EEE PC.Jak napisałem w update'cie dyski SSD chronią się przed ciągłym zapisem do tych samych komórek.Przekonałem się o tym jakiś tydzień temu gdy w celu zdobycia danych do pewnego eksperymentu napisałem na EEE PC i uruchomiłem nań program w Pythonie. Program miał na celu wejść na stronę wykop.pl, pobrać listę linków, wejść na każdy z nich i pobrać listę osób które wykopały link i listę osób które go zakopały. Później program zapisywał w pliku danej osoby linkę którą wykopała, lub zakopała. Ogólnie polegało to więc na tym, że program co chwilę otwierał pliki i dopisywał do nich nowe linie...I ciekawa sprawa :-) najpierw wszystko działało całkiem sprawnie, aż od pewnego momentu, od tego momentu wszystko szło szybko, po czym zawisało na kilka-kilkanaście sekund i znów szło szybko :-)Wniosek stąd taki, że programy na EEE PC które intensywnie piszą do tych samych obszarów dysku mogą szybko spodziewać się tego, że dostaną zadyszki i większość czasu spędzą na oczekiwaniu na przeniesienie różnych obszarów dysku na SSD :-)Jak ktoś ciekawy tutaj źródło skanera ;-) Przechodzi teoretycznie przez pierwsze 100 stron wykop.pl i buduje na dysku mapę głosowań użytkowników. W pliku [nazwa usera].digg jest lista linków na które głosował, a pliku [nazwa użytkownika].dugg jest lista linków które zakopał. Przed ewentualnym uruchomieniem programu należy sprawdzić w pliku robots.txt wykopu czy te działania są dozwolone [teraz są].
import urllib2#http://www.wykop.pl/kategoria/wszystkie/1def getText(addr): print addr handler = urllib2.urlopen(addr) s=handler.read() return sdef getLines(addr): #handler = urllib2.urlopen(addr) #s=handler.read().split("\n"); s=getText(addr).split("\n") return sdef getUsers(lines): searchedText = "http://www.wykop.pl/ludzie/" list = []  for i in range(1,len(lines)):  if lines[i].find(searchedText)!=-1:   q=lines[i].find(searchedText)   s=lines[i][q+len(searchedText):]   q2=s.find('"')   item=s[:q2]   print(item)   list.append(item) return list   def analyze(id): addr="http://www.wykop.pl/link/"+id+"/" text = getText(addr) addrLen = len(addr) q=text.find(addr) s=text[q+addrLen:] q=s.find('"') s=s[1:q]+"/" print s linkDigg = addr+s+"/wykopali" diggLines = getLines(linkDigg) diggUsers = getUsers(diggLines) for name in diggUsers:  f=open(name+".digg","a")  f.write(id+"\n")  f.close() linkDugg = addr+s+"/zakopali" duggLines = getLines(linkDugg) duggUsers = getUsers(duggLines) for name2 in duggUsers:  f=open(name2+".dugg","a")  f.write(id+"\n")  f.close()  for i in range(1,100): addr="http://www.wykop.pl/kategoria/wszystkie/"+str(i) print addr s=getLines(addr) print(len(s)) for il in range(1,len(s)):  if s[il].find("linkid")!=-1:   print s[il]   q=s[il].find('"linkid-')+8   s2=s[il][q:]   q=s2.find('"')   id=s2[:q]   print id   analyze(id)
Żeby było zabawniej program zawiera błąd, ale i tak działa ;-) Błąd polega na zbyt dużym obcięciu części adresu potrzebnego do uzyskania listy wykopywaczy i zakopywaczy. Widać jednak wykop.pl potrzebuje w tym miejscu tylko jakichś liter, nie ważne czy takich samych na jakie kieruje usera.


Podobne postybeta
Jak walczyć z gigantycznym kodem w Java'ie, część 1 ;-)
Jak zrobić plik OVPN (dla OpenVPN) w wersji unified format?
Jak nie zapomnieć kupić biletu miesięcznego - revised ;-)
Polowanie na Nexus 4 - wersja automagiczna ;-)
Jak nie zapomnieć kupić biletu miesięcznego ;-)

Forma nad treścią

Przed chwilą czytałem na WP albo Onecie informację o tym, że w południowo-wschodnich stanach USA ludzie ustawiają się w długaśne kolejki za paliwem i tankują je później nie tylko do baków, ale i do kanistrów, a nawet butelek po mleku. W komentarzach ktoś napisał, że jak mieszka przez 20 lat w USA to nie widział tam butelek na mleko. Nie jest tu istotne kto ma rację ;-) Ciekawe jest za to jak wiele podobnych stwierdzeń w dziennikarstwie wynika nie z faktów, a tego że dobrze brzmią i dziennikarz chce ich użyć.
Ile treści w wiadomościach to treść, a ile wynik przyjętej formy?
Gdy ktoś pisze o niebotycznych podwyżkach to wiemy, że chodzi o wysokie, ale zwykle dodawana jest informacja jak wysokie mają być te podwyżki w procentach. Ta niebotyczność wpływa tylko na nasz odbiór procentów. Ale gdy ktoś pisze o kilometrowych korkach to powstaje problem czy rzeczywiście chodzi o korki mierzone w kilometrach, czy o korek o długości kilometra, czy o długi korek.Czy gdy teraz dziennikarz pisze o zniewoleniu za czasów PRL to ma na myśli to, że istniała cenzura, czy to, że państwo wkraczało w każdy aspekt życia? [myślę, że pisze o pierwszym, ale chce wywołać odczucia związane z drugim].
Czy złowieszcze plany Rosji/Niemiec/Polski/opozycji/rządu to plany które wg. autora źle nam wróżą, czy to złe plany, czy to po prostu plany kogoś kogo autor nie lubi?
Sam nie jestem od tego wolny, choć zwykle tak prowadzę "wywód" by doprowadzić do jakiegoś "fajnego" zwrotu czy stwierdzenia w sposób w miarę naturalny. Ale trzeba pamiętać, że ja jestem amatorem, a dziennikarze to zwykle ludzie którzy piórem potrafią zrobić wiele ;-)Ile jest więc treści w treści i jaka część treści wynika z formy? ;-)

Podobne postybeta
Lubię plotki ;-)
Wybór laptopa w firmie
Czemu mniej miejsc parkingowych to mniejsze korki w mieści?
Wkurzają mnie obłudni i źli hipokryci mizogini.
Studia wyższe

poniedziałek, września 29, 2008

POpulizm

Wiecie w kogo uderzy ustawa liberalnej i demokratycznej Platformy Obywatelskiej o odbieraniu... przepraszam, przeliczeniu emerytur byłym SBekom i ludziom z WRON?Np. w pewną teraz 21 letnią dziewczynę. Jej ojciec pracował w SB, parę lat temu ona wraz z matką odeszły od ojca, który od dobrych 10 lat zajmował się głównie piciem. Po 2-3 latach gościu zapił się na śmierć, doszło nawet do tego, że w mieszkaniu leżał martwy przez kilka dni, aż się zaśmierdł.Dziewczyna teraz studiuje i dostaje rentę rodzinną po ojcu. I teraz najlepsze. Wszystko wskazuje, że jak ustawa przejdzie to dostanie mniej.Ta! Nie ma to jak przywalić sługusom reżymu, nawet takim którzy w momencie upadku systemu mieli 3 latka.A wszystko po to żeby PO mogło przejąć wyborców stojących za hasłem "Wszystkie une, które zarabiają wincej niże 1000 na miesionc to złodzieje!" i bandę nienawistników z imieniem Jezusa na ustach.A przecież można by było wykorzystać akta IPN do wykrycia tych pracowników SB którzy łamali prawo PRL, którzy bili przesłuchiwanych i wytoczyć im procesy... ale to by nie było tak nośne medialnie.

Podobne postybeta
Smutno mi się zrobiło...
Pochodzenie
Brudny sekret ;-) czyli jak podnieść oceny aplikacji w Google Play ;-)
Pat Condell - Boże, pobłogosław ateizm!
Czy EULA (End-user license agreement) jest potrzebna w aplikacji mobilnej, czy nie?

niedziela, września 28, 2008

Przepowiednia ;-)

Pobawię się w wizjonera ;-)

W ciągu 2-3 lat [w wariancie optymistycznym], lub w ciągu 5-8 lat [w pesymistycznym] do użytku zaczną wchodzić okulary 3D podpinane do komputera, które pozwolą cieszyć się pełną trójwymiarowością.

Jeśli będę o tym pamiętał napiszę o tym jak sprawdza się moja przepowiednia za te 2 lata :-)

Skąd ta przepowiednia? :-) Od dobrych 10 lat chorowałem na mały komputerek w stylu EEE PC. Po 9 latach pojawił się EEE PC.
Od 4 lat chciałem telefonów z większym ekranem i bardziej intuicyjnym systemem - teraz są iPhone i G1 od HTC.
Próbowałem robić interaktywne strony WWW z wykorzystaniem JavaScript w 2001 roku, a teraz AJAX rządzi ;-)

Nie, nie, nie znaczy to, że jestem jakimś niedocenianym geniuszem, który wszystko przewiduje. Znaczy to tylko tyle, że skoro ja potrafię wpaść na takie pomysły, to co najmniej kilka firm od paru lat już nad tym pracuje. W końcu to co widzimy teraz na rynku wynika z ewolucji tego rynku, więc wiele osób dochodzi do podobnych pomysłów.

Z innych rzeczy, spodziewajmy się za jakiś czas wyszukiwarek które będą potrafiły poradzić nam strony nie tyle na podstawie stron które odwiedziliśmy, ale na podstawie tych stron, albo na podstawie krótkiego tekstu na jakiś temat który wprowadzimy ;-)

Podobne postybeta
Marny ze mnie prorok ;-)
Wyprorokowałem ;-) - okulary 3D :-)
Pamiętające ja vs odczuwające ja
Wydało się jakim jestem Polakiem ;-)
Nadmiar wyboru, to jest problem dla Androida ;-)

czwartek, września 25, 2008

Sztuczki tropiciela błędów, part 3 - hackujemy klasy finalne ;-)

Dziś próbowałem się w pracy "włamać" do biblioteki odpowiedzialnej za pooling połączeń do bazy danych. Chodzi po prostu o to, że chcę ustalić czy pooling nie robi nieładnych rzeczy zaraz po starcie ;-)
Niestety autor klas poolingu był podejrzliwy i uczynił większość klas klasami finalnymi, przez to nie mogłem użyć mojej ulubionej techniki polegającej na nadpisaniu klasy i założenia breakpointów w metodach które chciałem obserwować...
I wtedy przyszło olśnienie ;-) A co gdyby "wstrzyknąć" swój kod do środka klasy "wroga" i zmusić ją do pracy na moją korzyść? ;-)

Na klasach poolingu tego jeszcze nie zrobiłem, ale idea wydaje się być słuszna. Szczególnie skuteczna powinna być w przypadku klas, które agregują lub są wrapperami dla klas które dziedziczą po czymś dostępnym, lub rozszerzają coś dostępnego.

Wyobraźmy sobie, że mamy kod interfejsu:

package org.przemelek.hack.secure;
public interface Form {
public void login(String user,String password);
}
Oraz finalną klasę SecureForm, która jest "tajna" i finalną klasę opakowującą SecureForm o nazwie SpecialForm, która to klasa używa naszej tajnej klasy.
package org.przemelek.hack.secure;
final class SecureForm implements Form {
protected SecureForm() {
System.out.println("Secure object created");
}
public void login(String user, String password) {
System.out.println("Secure login");
}
}
package org.przemelek.hack.secure;
public final class SpecialForm implements Form {
private Form form;
public SpecialForm() {
form = new SecureForm();
}
public void login(String user, String password) {
form.login(user, password);
}
}
Chcielibyśmy móc coś zrobić w momencie gdy wywołana zostanie metoda login(String,String), z tym że chodzi także o wywołania wewnątrz kodu klasy SpecialForm [tutaj akurat takich nie mamy].

I w tym momencie z pomocą przychodzą nam odbicia ;-)

package org.przemelek.hack;
import java.lang.reflect.Field;
import org.przemelek.hack.secure.Form;
import org.przemelek.hack.secure.SpecialForm;

public class Hack {
public static void main(String[] args) throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException {
Form form = new SpecialForm();
Field formField = SpecialForm.class.getDeclaredField("form");
formField.setAccessible(true);
final Form oldForm = (Form)formField.get(form);
formField.set(form, new Form() {
public void login(String user, String password) {
System.out.println("Hacked login :-)");
System.out.println("user:"+user+" password:"+password);
oldForm.login(user, password);
}
});
form.login("test", "tost");
}
}


Przez odbicia prosimy o zadeklarowane pole form, zapamiętujemy jego wartość, następnie tworzymy klasę anonimową na podstawie znanego nam interfejsu Form, i podmieniamy jej instancją wartość pola form.
I już działa ;-)
Gdy gdziekolwiek w naszym kodzie, czy kodzie biblioteki którą hackujemy nastąpi wywołanie metody login(String,String) z klasy SpecialForm wywołany zostanie także nasz kod :-) Sztuczki tropiciela błędów, part 2
Sztuczki tropiciela błędów, part 1

Podobne postybeta
Sztuczki tropiciela błędów, part 4
Sztuczki tropiciela błędów, part 2 ;-)
Niecne wykorzystanie refleksji... czyli jak poszukać tekstu w drzewie obiektów? ;-)
Ile to jest 1+1 w Java'ie?
PKO BP to jednak nie umie w płatności..

wtorek, września 23, 2008

Złodzieje czasu - mail, IM i telefon

Wiele osób to już odkryło ;-) teraz zdałem sobie z tego sprawę ja [choć podejrzewałem to od wielu lat ;-)]Poczta elektroniczna, komunikator i telefon to złodzieje czasu.Poczta elektroniczna kradnie czas w taki sposób, że co chwilę odrywamy się od tego co robimy i sprawdzamy czy nie ma nowej poczty [robimy to wszędzie! jak ktoś ma komórkę z dostępem do Internetu to niech się zastanowi jak często zdarzało mu się sprawdzać pocztę w toalecie], a jak jest to czytamy ją i próbujemy odpowiedzieć. Dodatkowo często mamy włączone przeszkadzajki, które skutecznie odrywają nas od naszych zajęć gdy przyjdzie nowy mail.Komunikator kradnie czas w taki sposób, że po pierwsze go używamy ;-) I niezależnie o czym jest rozmowa, w końcu schodzi na wymianę imotków. Dodatkowo gdy ktoś z listy znajomych zmienia status to pojawiają nam się przeszkadzajki, które znowu odrywają nas od naszych zajęć.Telefon kradnie czas przez, jak łatwo zgadnąć - dzwonienie ;-). W każdej firmie gdy wszyscy pracownicy mają telefony na biurkach używają ich do załatwiania wszystkiego. Zadzwonią do Ciebie [a Ty do nich] z największą pierdołą skutecznie odrywając Cię od Twoich zajęć. Chyba dlatego pierwszym hasłem różnych Inbox Zero i podobnych jest to by w pierwszej kolejności wyłączyć klienta e-mail i używać go tylko gdy trzeba ;-)Sam od jakiegoś czasu świadomie nie włączam w pracy klienta GG, staram się by przeglądarka nie była otwarta ciągle na GMAILu, a firmowego Outlooka staram się ignorować [maile na które muszę odpowiedzieć i tak mam od rana w skrzynce, a z racji różnicy czasu jest mała szansa by ktoś z moich przełożonych ze stanów wstawał o 3 w nocy by wysłać mi pilnego maila ;-)]. Co do telefonu to dzięki temu, że w pracy mam softphone'a który przez prawie cały czas jest wyłączony problemu nie mam ;-)Btw. w pracy, gdy wszyscy jesteśmy w jednym biurze [lub kompleksie biurowym] najzdrowszą zasadą komunikacji jest chyba "jeśli dla załatwienia danej sprawy nie chce Ci się podnieść 4 liter i podejść do osoby, z która tą sprawę masz załatwić, to sprawa ta nie jest warta przeszkadzania tej osobie"... fakt, sam się nie zawsze do tej zasady stosuję ;-)


Podobne postybeta
eBook - jak na razie się nie opłaca
Złe i dobre cosie....
Nie lubię oszustów.
W jakiej firmie warto pracować?
POpulizm

Książki nad pieniądze :-)

Co jakiś czas ktoś proponują mi pieniądze w ramach wsparcia dla mojej wtyczki OpenOffice.org2GoogleDocs [nazwę naprawdę koszmarną wymyśliłem ;-)] albo za inne moje projekciki. Jest to dziwne, ale i miłe ;-)Zawsze grzecznie dziękuję, bo dla pieniędzy [i przyjemności też] piszę kod w pracy, a w domu gdy coś piszę to robię to tylko dla czystej przyjemności :-) Zawsze jest jednak problem polegający na tym, że trudno jest grzecznie odmówić gdy ktoś chce Ci coś dać ze to co robisz za darmo bo lubisz. Jest trochę niezręcznie, bo przecież osoba proponująca wsparcie robi to w dobrej wierze i nie chce nikogo urazić, a ja nie chcę tej osoby urazić odmową bo choć ja wsparcia nie potrzebuję to są projekty które mogą go potrzebować.Moją motywacją dla tworzenia takich rzeczy jak OpenOffice.org2GoogleDocs, Gadacz czy BuffyPedia jest chęć sławy ;-) i satysfakcja płynąca z tego, że widzę iż np. ostatnią wersję OOo2GD pobrało już ponad 7400 osób. W przypadku bloga "zapłatą" są komentarze [patrząc na ich ilość wnoszę, że nie dostarczam produktu który wzbudzałby większe zainteresowanie ;-)]Dlatego ostatnio pojawił mi się w głowie szalony pomysł ;-) Jeśli ktoś chce okazać mi wsparcie, mogę dać tej osobie szansę :-)Niektóre programy to CardWare, gdzie autor wymaga wysłania mu pocztówki w zamian za korzystanie z programu. Ja mogę zaproponować GiveMeABookIfYouReallyWantToWare ;-) W GiveMeABookIfYouReallyWantToWare osoby, które miałyby ochotę wesprzeć autora mogłyby mu [czyli mnie ;-)] kupić jedną z książek, które chciałby mieć, a nie ma bo ich np. w Polsce nie można znaleźć. Mogłyby też wskazać gdzie tą książkę można fizycznie kupić w okolicy dostępnej dla autora [w moim przypadku w Krakowie]Szczerze jakby ktoś taki mi przysłał taką ustaloną ze mną książkę, to chętnie przelałbym tej osobie pieniądze za książkę i przesyłkę ;-) [oczywiście w rozsądnych granicach ;-)]Wsparciem byłby raczej trud włożony przez taką osobę w pójście do księgarni i kupienie książki, a później wysłanie tej książki.Dlatego jeżeli wiesz np. gdzie można w Krakowie bez kłopotu kupić 3 część Odysei Czasu - "Firstborn" Arthur'a C. Clarke'a to chętnie się tego dowiem :-) To samo dla "The Last Theorem" tego samego autora i np. angielskich wersji książek Dawkinsa :-)


Podobne postybeta
Przybijające cosie.......
Disconnect, Facebook, PayPal i wykop, czyli 1 plus i 3 minusy ;-)
Odyseja Czasu - Burza Słoneczna
Go dla Java'owca ;-) odcinek 2 "kontenery dwa ;-)"
Prawdziwy narodowo-katolicki patriota i prawdziwy żydokomunista - opis wzorców

niedziela, września 21, 2008

Dziwne finanse, dziwna gospodarka......

Wolny rynek, kapitalizm, liberalizm gospodarczy. To wszystko są podobno leki na całe zło świata. I chyba rzeczywiście coś w tym jest..... ale jest duże "ale" ;-)Krótka sprzedaż, dźwignie i tym podobne rzeczy to naprawdę dziwna sprawa.Ceny akcji spadają? Nie masz zbyt dużo pieniędzy? Chcesz dużo zarobić? To stosujesz krótką sprzedaż. Idziesz do biura maklerskiego i mówisz coś w stylu "chłopaki pożyczcie powiedzmy milion akcji spółki A, oddam wam to za 2 dni i zapłacę za tą pożyczkę 10% wartości tych akcji z dnia dzisiejszego". Oni pożyczają Ci ten milion akcji, które właśnie spadają, sprzedajesz je po 1 złoty za sztukę, czyli dostajesz milion złotych, po 2 dniach cena akcji to powiedzmy 80 groszy. Kupujesz milion akcji za 80 groszy sztuka, płacisz 800 tysięcy złotych. Oddajesz biuru maklerskiemu ich milion akcji i płacisz 100 tysięcy złotych, a sam masz swoje 100 tysięcy złotych. Ponosisz oczywiście ryzyko, bo możliwe że akcje wzrosną, ale skoro zwiększasz ich podaż to przy odpowiednio dużej operacji i tak spowodujesz spadek ceny, a istnieje duże prawdopodobieństwo, że mniejsi inwestorzy widząc większy spadek zdecydują, że wolą sprzedać swoje akcje, przez co wywołają jeszcze większy spadek. Biuro maklerskie też ponosi ryzyko, w końcu te akcje nie są jego, tylko klientów czyli jeżeli odpowiednio wielu klientów będzie chciało sprzedać swoje akcje może się okazać, że biuro nie ma ich tylu wiec musi im zapłacić pieniędzmi ze swojej kieszeni i później sprzedać akcje gdy je dostanie z powrotem od tego kto je pożyczył. Ale ryzyko nie jest duże.I niby wszystko OK, ale wydaje mi się to jakieś moralnie dwuznaczne. Jak ten sam proceder wyobrazimy sobie z samochodami to wygląda to już bardziej podejrzanie. Idziesz do warsztatu samochodowego i pożyczysz od nich naprawione właśnie auto, po którego odbiór klient ma się zgłosić za 2 dni, sprzedasz to auto komuś za pewną kwotę, a później kupujesz takie samo auto za mniejsze pieniądze i oddasz je do warsztatu. Oczywiście istnieje ryzyko, że będziesz musiał dopłacić do interesu i w tym Twoje ryzyko. Ale jak to auto stracisz to co prawda to Twój problem bo musisz je oddać to nagle staje się to też problemem warsztatu, i właściciela. Bo świadomość, że jesteś mu winien samochód niewiele daje gdy nie masz tyle pieniędzy by za ten samochód móc zapłacić ;-)A inny patent [zresztą dzisiejsze problemy gospodarki światowej są tym spowodowane] to pożyczać ludziom pieniądze na zakup domu lub mieszkania, pożyczać im to na wysoki procent (po 30 latach spłacą Ci powiedzmy 200% kwoty którą im pożyczasz) jak największej ilości osób, dzięki temu więcej ludzi chce kupować mieszkania, rośnie popyta, a więc i ceny. Nie masz tyle pieniędzy by wszystkim chętnym ludziom na to pożyczyć, dlatego emitujesz obligacje i mówisz inwestorom, że w ciągu 30 lat zarobią na tym interesie 50%. Ty zarabiasz, inwestorzy zarabiają, ludzie zarabiają [w końcu ceny mieszkań też rosną no i mają gdzie mieszkać]. Ale w pewnym momencie dochodzi do sytuacji, że ludzie nie mogą już spłacać kredytów [bo pożyczałeś wszystkim jak leci], dlatego nie masz pieniędzy żeby płacić swoim inwestorom...... i zaczynają się problemy. A w tym wszystkim najlepsze jest to, że pozornie największe ryzyko ponosi ten kto pożycza pieniądze ludziom na mieszkania i domy, w końcu to są często osoby o bardzo niskich dochodach, a więc istnieje duża szansa, że nie będą w stanie spłacać rat.... dlatego oprocentowanie jest wysokie. Ci którzy kupują papiery z których te kredyty są finansowane są przekonani, że nie kupują ryzykownych papierów.... Ryzyko pozornie znika.. I później wraca.Pewnie jestem naiwny, ale wydaje mi się, że ta nowoczesna finansjera nie jest do końca uczciwa ;-)Btw. a co będzie jeśli okaże się, że cały nasz dobrobyt ostatnich 20-30 lat [OK, w Polsce może nie tak bardzo odczuwany i widoczny dopiero od paru lat] to wynik takich praktyk? Może jest tak, że przez takie operacje jest tak, że większość pieniędzy na świecie jest wirtualna? I może w pewnym momencie okaże się, że trzeba będzie obudzić się w świecie bez tych wirtualnych pieniędzy?


Podobne postybeta
Nieistniejący rynek
2011 zaczęty ;-)
zVATowani 2
Informacja 2
O Ruchu Poparcia Palikota, czyli RPP ;-)

środa, września 17, 2008

Kaloryfer

Niby to tylko taki pokręcony, srebrny kawałek żeliwa który wisi przy ścianie.Takie niby nic.A jednak jak zaczyna być ciepły to staje się powodem do niepohamowanej radości i podskoków :-)Dlatego zakrzyczmy pospołu - NIECH GRZEJĄ NAM KALORYFERY :-)

Podobne postybeta
Nowa firmowa Macówka :-)
Sztuka ;-)
Kryzysowy, pokręcony algorytm? ;-)
Yuval Noah Harari wisi nam jedną książkę.... ;-)
To działa! :-)

Polska kapliczka

Najnowsza gorąca wiadomość na WP i Onet to informacja o tym, że prof. Aleksander Wolszczan współpracował z SB.

Nie wiem czy to prawda czy fałsz, ale nie ma to dla mnie żadnego znaczenia.

Jeżeli po jednej stronie są Macierewicz, Kaczyńscy, Walentynowicz czy Gwiazdowie, a po drugiej Wolszczan, Wałęsa [którego się też o to oskarża] czy Kuroń [tez go oskarżano] to zdecydowanie wolę być po stronie tych, których "prawdziwi Polacy" uznają za kapusiów. Po prostu wolę być po stronie ludzi, którzy może i zrobili coś czego mogą się wstydzić, ale zrobili też coś dla reszty świata, a nie po stronie osób które całą swoją siłę kierują na oskarżanie innych. Wole tych, którzy coś zbudowali, niż takich którzy tylko niszczą.

Dlatego puki ktoś nie udowodni mi, że Jaruzelski wprowadził stan wojenny po to tylko by móc się bawić w dyktatora, i że nie miało z tym nic wspólnego to, że mógł obawiać się interwencji radzieckiej, ani to że mieliśmy wtedy zimę stulecia, a zapasów węgla było na 2-3 tygodnie, póty będę uważał, że Jaruzelski był jedynym z niewielu polskich polityków, którzy mieli i mają jaja.

Tak samo nawet jeśli Wolszczan był współpracownikiem SB to mogę jedynie przyznać, że SB wybierało inteligentnych ludzi. Nie uznaję tego za tragedię. Tragedią jest to, że jak zwykle mamy polskie piekiełko.

Czesi mają podobno jakieś powiedzenie o polskiej kapliczce, oznacza ona podobno właśnie polskie piekiełko - z nim się nie witam, z nim nie rozmawiam, go nie lubię.

Za 100 lat w podręcznikach będzie mowa o Aleksandrze Wolszczanie jako o odkrywcy pierwszych pozasłonecznych układów planetarnych, i obawiam się że jak tak dalej pójdzie to będzie to w ogóle jeden z niewielu polaków którzy w tych podręcznikach będą.


Podobne postybeta
Jak VHDL obalił komunizm
Ważne książki
Generał Jaruzelski wg. Kuklińskiego
Wolność i Propaganda
IV RP i czemu Michnik jest zły

niedziela, września 14, 2008

CONNECT i tunele

Próbowałem wczoraj zbudować tunel... nie taki zwykły, a elektryczny ;-) a dokładniej chciałem dodać do stworzonego przeze mnie jakiś czas temu serwera proxy możliwości tunelowania połączeń HTTPS.
Bazuję na dokumencie Tunneling TCP based protocols through Web proxy servers, a chcę doprowadzić do tego, żeby mój serwer proxy mógł obsługiwać aplikacje takie jak Google Chrome, Safari czy Spik Wirtualnej Polski, które miewają problemy we współpracy z serwerami proxy NTLM. Dzięki temu aplikacje będą rozmawiały z najnormalniejszym HTTP proxy, które będzie przekazywało ich żądania do proxy NTLM....
Są programy, które to robią, ale są duże i jakieś takie nieporęczne. No i nie są moje ;-)

Problem jest jednak taki, że jakoś obsługa CONNECTa mi nie wychodzi. Niby wszystko robię tak jak trzeba, czyli gdy przychodzi żądanie z metodą CONNECT to próbuję połączyć się ze wskazanym przez to żądanie hostem, melduje klientowi [czyli przeglądarce], że wszystko jest OK.... ale nie jest ;-) próba czytania z gniazda serwera, z którym się łączę i z gniazda klienta po odczytaniu żądania kończą się wyjątkami..........
Na razie działam tak, że w momencie CONNECT przesyłam je do serwera docelowego i w tym może tkwić problem....... Ale jeszcze go nie potrafię obejść ;-) Niestety sniffer nie podsłuchuje dobrze ruchu na interfejsie lokalnym...

Do tego dochodzi to, że niestety choć Java wspiera używanie różnych proxy, to jednak właściwości http.proxyHost, http.proxyPort i ich wersje dla HTTPS nie wpływają na połączenia oparte o sockety. Na nie wpływa tylko właściwość socketProxyHost i socketProxyPort. Oznacza to, że będę musiał zrezygnować z używania socketów na rzecz używania HttpURLConnection.

Wyżaliłem się :-)


Podobne postybeta
Proxy :-)
Przymiarki do Nowego Gadacza
NTLM działa z OpenOffice.org2GoogleDocs :-)
Złe proxy... złe... czyli jak nie należy przekombinowywać ;-)
A może by tak wsparcie dla Zoho w OpenOffice.org2GoogleDocs?

sobota, września 13, 2008

Lubię tramwaje :-)

Ze względu na remonty dróg w Krakowie [czytaj korki ;-)] parę miesięcy temu przesiadłem się z samochodu do tramwaju.
Co prawda oznacza to, że muszę wstawać o zadanej godzinie i czasem jest problem gdy tramwaje są chore [np. któryś się wykolei, albo jakiś inteligentny inaczej kierowca zaparkuje tak, że blokuje tory], choć taka choroba zdarzyła się na razie raz ;-)
Ale plusów jest więcej :-)
Po pierwsze - mniej stresu. Nie muszę obawiać się, że ktoś się zagapi i wjedzie w mój pojazd, nie muszę się spieszyć żeby zdążyć przed zapełnieniem firmowego parkingu :-)
Po drugie - książki. Na przystanku i w tramwaju czytam sobie książkę, w samochodzie jest to raczej niewskazane ;-)
Po trzecie - czas. Z wyjściem na tramwaj, czekaniem nań, jazdą, i dojściem do pracy podróż zabiera mi około 25 minut. W przypadku jazdy samochodem jest to czas minimum konieczny na przejechanie 4 czy 5 km, które dzielą mnie od pracy ;-)
Po czwarte - cena. Bilety na tramwaj kosztują mnie mniej więcej tyle ile benzyna do samochodu. A trzeba zaznaczyć, że jako istota z natury leniwa nie mam Krakowskiej Karty Miejskiej, a jedynie kupuję bilety papierowe które kasuje za każdym razem. Miesięczny byłby jakieś 30-40% tańszy.
Po piąte - tramwaj :-). Waży 70 ton, jest elektryczny, wymaga infrastruktury i jest inny... Chyba każdy kto w wieku 5-6 lat miał okazję jechać tramwajem choć raz chciałby móc kiedyś taki poprowadzić ;-) A do tego czasem można jeszcze pojechać takim starszym tramwajem, który w środku jest jeszcze ładny. Ogólnie jestem zadowolony. Może to przez to, że tramwaj jest chyba najszybszym środkiem transportu w Krakowie :-) Jakieś 2-3 lata temu [rany... ale ten czas leci...] korzystałem też z krakowskich autobusów i też nie mam na co narzekać.
Do napisania tego wszystkiego zachęciły mnie zwierzenia krakowskiego motorniczego opublikowane w Gazecie Wyborczej, które znalazłem na Wykopie.
Przez czas gdy jeżdżę krakowskim MPK autobus sprzed nosa uciekł mi dokładnie raz, trochę więcej razy uciekł mi z powodu świateł ;-) Tramwaje na razie się mnie chyba nie boją bo nie uciekają. Może to przez to, że ja po prostu lubię tramwaje :-) btw. ostatnio jadąc tramwajem zlokalizowałem jedną ze stacji zasilających sieć tramwajową - i to też jest fajne :-)

Podobne postybeta
Pomysł na film
Zapiski z 29 piętra....
RAMu nigdy nie jest za dużo... :-)
Jak nie zapomnieć kupić biletu miesięcznego ;-)
Komputery w ubraniu....

piątek, września 12, 2008

Zasiałem mema :-)

Jeśli przyjąć, że memy istnieją to codziennie je przenosimy, utrwalamy, powielamy.Czasem je tworzymy ;-) a takie nowe memy miewają efekty "fenotypowe" ;-) [tak jak moda, czy poezja, choć moda bardziej], przekładają się na nasze zachowania. Oczywiście nie tylko nowe memy mają takie efekty, parę naprawdę starych tak mocno się zagnieździło, ze ludzie palili innych tylko z tego powodu, że w ich mózgach te memy nie istniały lub znajdowały się w zmutowanej wersji.Istotne jest jednak to, że zauważyłem, że zasiałem jakiś czas temu mem :-) Gdy przeniesiono nas w pracy do innej części budynku dostaliśmy tam nową kuchnię, z innymi koszami na śmieci. Niewygodnymi bo konieczne jest w nich przesunięcie ręką pokrywki [takie odwrócone "U", gdzie oś obrotu przechodzi przez podstawę], a jak człowiek w jednej ręce trzyma nadal mokrą torebkę od herbaty, a w drugiej łyżeczkę to mu rąk zaczyna brakować do operowania takim śmietnikiem. Dlatego zacząłem z uporem maniaka stawiać te kosze blisko ściany otwierając jednocześnie kosz w taki sposób, że ta przykrywka blokuje się o ścianę. I co widzę teraz? :-) Coraz częściej jest to tak ustawione bez mojej inicjatywy :-) Ludzie zaczęli kopiować to zachowanie :-)Problemem jest jak długo się to utrzyma. Dla nosiciela takiego memu jego "efekt fenotypowy" powinien być pozytywny czyli mem powinien się utrzymać w głowie nosiciela. Nie wiem jednak jak sprawy się mają w przypadku rozprzestrzenianiem się na innych nosicieli. Ponieważ to ludzie decydują w mniejszym lub większym stopniu, które memy skopiują istotne jest to by mem był dla człowieka atrakcyjny [lub dla jego głosiciela był na tyle ważny, że będzie innym zatruwał życie póty, puki nie "przyjmą memu"]. Ten akurat mem może się kopiować wtedy gdy ludzie uznają to za dobry pomysł lub gdy ktoś przyjmie rolę jego proroka ;-)Hmm.. patrząc na to powyżej stwierdzam, że chyba powinienem już spać ;-)


Podobne postybeta
Foldery
Smutno mi
RDrive w działaniu ;-) czyli kolejny raport z prac nad Kolczatką ;-)
Algorytmy Genetyczne szukają Symbolu Newtona ;-)
Moje "odkrycia" 2014 roku :-)

czwartek, września 11, 2008

Wycieczka po książki ;-)

Dziś po pracy poszedłem sobie na piechotę do Galerii Kazimierz, a później do mojego miejsca spania [jakieś 5 km z obciążeniem w postaci moich nowych głośników ;-)]
Upolowałem tam 2 książki - Piekło pocztowe Pratchetta i 2001: Odyseja Kosmiczna Arthur'a C. Clarke'a [mam z 1990 roku, ale wypadają z niej już kartki :-(].
Upolowałem też dwa całkiem miłe zdjęcia :-)





Oba zrobione z mostu Kotlarskiego

Przy okazji połowa EMPiKu starała się znaleźć jedną książkę po którą zostałem wysłany ;-) gdy już się poddali wzrok pani obsługiwantki znalazł ją wśród kryminałów ;-)

Podobne postybeta
Straż Nocna
Odyseja Czasu - Burza Słoneczna
Empik w Bonnarce ssie
Zmarł Arthur C. Clarke :-(
Znikające komputery ;-)

środa, września 10, 2008

Terminatorowa refleksja ;-)

Taka refleksja mnie naszła po obejrzeniu najnowszego odcinka Terminator: Kroniki Sarah Connor.
Refleksja - Czy maszyna może kochać? [zakładając, że może myśleć i być świadoma] [w filmie Cammeron [Terminatorka] krzyczy do Johna [zbawcy ludzkości - wroga SkyNet'a] "Już jestem dobra, już jestem dobra. Przeprowadziłam testy i już jestem dobra, dobra. Kocham Cię". Symuluje, bo John ze śrubokrętem próbuje jej otworzyć głowę, a ona znajduje się między 2 samochodami.]
Większość odpowie nie, ja nie wiem, ale nie o tym tutaj :-)
Myślę, że jest tak, że jeżeli miłość to zestaw jakichś zachowań, które nabyliśmy w trakcie ewolucji, to odpowiedź brzmi - raczej nie, bo po co. Jeżeli miłość to wynik świadomości to odpowiedzią będzie - chyba tak, jeżeli zyska świadomość.
Poczamu tak?
Zacznę od deklaracji ;-) uważam, że my ludzie jesteśmy bardzo skomplikowanymi maszynami. Mówiąc inaczej, w naszym działaniu jest tylko fizyka, chemia, biologia, czy czego tam użyjemy do opisania naszych zachowań. Powstaliśmy w brzuchach naszych matek w procesie skomplikowanego dialogu chemicznego. Nasze geny zbudowały nasze ciała z materiałów dostarczonych przez mamę, posłuszne poleceniom chemicznym jej organizmu. To, że jej ciało miało odpowiednią temperaturę i stężenie różnych substancji spowodowało, że akurat nasze geny miały farta i odpaliły większość swoich programów pod zbiorczą nazwą - zbuduj człowieka.
Nie było w tym żadnej magii, czarów czy religii. Była chemia i fizyka, której jeszcze nie rozumiemy i może nigdy do końca nie zrozumiemy.
W wyniku tego procesu powstały nasze ciała, a w nich nasze mózgi. A że mózg to strasznie skomplikowana sieć wzajemnych połączeń, przez którą ciągle płynie prąd elektryczny to w pewnym momencie w tym mózgu powstał na tyle skomplikowany układ, że zaczął patrzeć na otaczający go świat. Z czasem ten układ zaczął patrzeć na świat jako coś odrębnego. I tu też nie było magii, czarów czy religii. Tak staliśmy się świadomi. A nasza świadomość jest "tylko", choć ja uważam, że "aż" wynikiem interakcji tej całej sieci. Ktoś może uważać, że to smutne, ja uważam, że wspaniałe :-)
Jeżeli więc jesteśmy tak jak uważam w pełni materialni, to nie ma przeszkód by do tego samego, czyli zaistnienia świadomości doszło na drodze budowy przez kogoś podobnego do nas maszyn, które będą świadome. Problemem jest to czy takie maszyny mogą mieć uczucia. Nie dlatego by uczucia były czymś strasznie trudnym do zrobienia. Chodzi raczej o to, że jeżeli uczucia mają podstawy ewolucyjne, to może nie być sensu "montowania" ich w świadomych maszynach [fakt, one same mogą dojść do wniosku, że to ma sens ;-)].
A te podstawy ewolucyjne są raczej silne. Taki np. strach ma podstawy czysto ewolucyjne, gdybyśmy się nie bali to robilibyśmy różne rzeczy, które spowodowałyby nasze wyginięcie. Gdyby mysz nie bała się przebywania w otwartym terenie to przebywałaby tam zapewne na tyle długo by przelatująca sowa spożytkowała ją w celach gastronomicznych. Gdy jest przerażona, to po pierwsze unika niebezpiecznych sytuacji, a po drugie jeżeli już jest zmuszona do podjęcia ryzyka to stara się szybko go pozbyć.
U nas - ludzi - przybrało to jeszcze inne objawy. Przez 100, 200 czy 500 tysięcy lat, a nawet przez 2 mln lat nasi przodkowie głodowali. Każda nowa "gęba" była problemem. O to by przodkowie chcieli mieć dzieci "zadbały" geny, w końcu to w "ich interesie" było przekazywanie genów następnym pokoleniom. Ale taki obcy po pierwsze mógł pożreć nasze zapasy, po drugie mógł przyprowadzić więcej obcych, po trzecie miał obce geny [to akurat bardziej "interesowało" geny]. Dlatego strach przed obcymi miał sens, pomagał. A teraz objawia się tym, że gdy widzimy kogoś o innym kolorze skóry, czy z innej grupy społecznej, kogoś kto po prostu przeszedł pozytywnie test obcości to się go boimy. Miłość też można tak wytłumaczyć. Ludzkie dziecko potrzebuje czasu by stać się samodzielne, i przez pierwsze lata życia pochłania całą uwagę matki [teraz coraz częściej też ojca, co należy zaliczyć na plus :-)]. Jeżeli jednak ojciec zamiast próbować w koło rozsiewać swoje geny poświęci swój czas na opiekę nad swoimi dziećmi i ich matką to nagle może się okazać, że jego dzieci mają większe szanse przeżyć niż dzieci innych, a matka jego dzieci jest bardziej chętna na kolejne właśnie z nim. Ale ludzie są z natury swej leniwi [jak i wszystkie zwierzęta, w końcu nadmiar żywności - energii to nowa przypadłość która od jakiegoś czasu dręczy ludzkość, inne gatunki jej nie znają], więc opiekują się sobą tylko gdy są w pewien sposób ogłupieni. Ktoś może powiedzieć, że przecież wiele par się kocha, a nie maja dzieci. Fakt, a ile znacie par, które się kochają, a nie uprawiają seksu? To, że nie ma dzieci jest nieistotne, w końcu w drodze ewolucji promowane były te geny, które powodowały, że ich transportery [znaczy się my] zwiększały szansę przekazania tych genów następnym pokoleniom. Seks więc był całkowicie wystarczającym gwarantem przekazania tych genów. Skuteczna antykoncepcja jest wynikiem dopiero ostatnich paru lat ;-) więc geny się do tego jeszcze nie ustosunkowały.
Wracając do problemu :-) Jeżeli uczucia się tylko wynikiem ewolucji, to maszyny ich nie muszą mieć. Maszyny nie muszą mieć młodych, odpada więc potrzeba istnienia miłości. Nie muszą się bać śmierci, mogą się odbudować - odpada strach. Zazdrość, pycha i podobne też odpadają. Ciekawość może być przydatna. U nas mogła pomagać w badaniu nowych rodzajów pożywienia, czy w tych szaleńczych wyprawach za wzgórze, czy do innej kępy drzew, które doprowadziły do tego, że rozpełzliśmy się po całej planecie. A może jest tak, że świadomość to wynik tych ewolucyjnie nabytych cosiów? Może bez strachu nie moglibyśmy być świadomi? :-) Wtedy maszyny musiałyby symulować strach i inne uczucia. Ale czy takie symulowane by wystarczyły? Znów z innej strony, skoro już w 2006 roku udało się przeprowadzić symulację 50 ns życia wirusa, to wraz ze wzrostem mocy obliczeniowej możemy być w końcu w stanie symulować pracę mózgu.... i tu dopiero się pojawi problem ;-) czy jeżeli taka symulacja będzie przeprowadzona na "zwykłym" komputerze, ze skończoną dokładnością obliczeń, to czy będzie to miało wpływ na istniejącą w tym symulowanym mózgu świadomość? ;-) Bo jak nie będzie miało, to co z wolną wolą? ;-)
OK, jak na to patrzę to stwierdzam, że chyba nie należy oglądać tego serialu ;-) za bardzo mnie nakręca na przydługie wywody ;-)


Podobne postybeta
Inwestycja w przyszłość
Transhumanizm [długo i nudno ;-)]
Książki, które mi się spodobały w 2017
Dobór naturalny, albo my
"Skoro ludzie wyewoluowali z małp to czemu małpy nadal istnieją?"

poniedziałek, września 08, 2008

Na śpiocha....

Jakieś 20 minut temu postanowiłem sobie rozwiązać jedno z zadań z Google CodeJam. To jedno z prostszych i chodzi w nim o to by mając 2 zestawy liczb zbudować z nich 2 wektory i pomnożyć ich wyrazy tak by dostać najmniejszy możliwy skalar.

Odpalenie Eclipse Ganymede trwa na EEE PC chwilę i wystarczyło mi do tego bym usnął ;-)

A wszystko jest o tyle ułatwione, że leżę na łóżku [a dokładniej się z niego zwieszam ;-)] z brodą na poduszce....

Najpierw próbowałem z Pythonem, ale stwierdziłem, że nie wiem jak się czyta pliki w Pythonie.... znaczy wiem, że sobie mogę przypomnieć, ale mi się nie chce.

A teraz w tle mi zaczął lecieć kawałek ze Snu Nocy Letniej i to nie wiem czy nie ten gdy Puk wypełnia polecenie Oberona i wlewa do oczu Spodka i Tytani nektar... chociaż nie, Spodek był tu ofiarą bo on nie był na prochach.... Swoją szosą czy to nie jest niesprawiedliwe, że wszyscy poza Spodkiem byli zadowoleni?

OK, śpiochowatość już mi się rzuca na umysł bo rozpisuje się o niczym ;-)
Na koniec przepis na rozwiązanie tego zadania z Google CodeJam. Posortować obie listy, jedną z nich odwrócić, mnożyć liczby i sumować wyniki mnożeń. W wyniku dostaniemy najmniejszy możliwy skalar ;-)

Podobne postybeta
O wadach wysokiego IQ
N niefartów ;-)
Pandemia snowi nie służy ;-)
Odsypianie dziwne
Gorzkie żale zegarowe

sobota, września 06, 2008

OOo2GD (OpenOffice.org2GoogleDocs) 1.2.2

Tym razem dwie poprawki współpracy z serwerami WebDAV. Pierwszy poprawiony problem dotyczył eksportowania plików ze spacją w nazwie, drugi z poprawionych problemów to błędne informowanie o sukcesie eksportu do serwera WebDAV gdy tak naprawdę plik nie został wyeksportowany.
Do tego wszystkiego mała zmiana kosmetyczna, okno z paskiem postępu w trakcie ładowania i z informacją, że eksport jest w toku będzie teraz widoczne w prawym dolnym rogu ekranu [widać je tam, a nie przeszkadza tak bardzo].

Zapraszam do pobierania

Jakieś sugestie na nowe funkcje i poprawki? :-)

Podobne postybeta
Eksport z OpenOffice.org2GoogleDocs do Box.net
OOo2GD 3.0.0 - eksportowanie do Google Docs bez konwersji :-)
OpenOffice.org2GoogleDocs 1.4.0
Hacky tool ;-) - workflow do Alfreda, który pozwala wykonywać różne konwersje na zawartości schowka ;-)
OOo2GD 1.7.0

czwartek, września 04, 2008

Clarke

Jak pisałem codziennie sprawdzam na stronie wydawnictwa Etiuda czy już może dostępna jest następna część Odysei Czasu Arthura C. Clarke'a i Stephena Baxter'a.Nawet się wczoraj spytałem i już wiem, że planują ją na październik :-)Spytałem też czy może planują wydanie innych książek Clarke'a, czy może jest zbyt mały odzew ze strony czytelników.... Niestety potwierdzili moje obawy. Wydane przez nich książki z serii Odyseja Kosmiczna nie sprzedają się chyba najlepiej, dlatego raczej nie będzie wznowień starych książek i wydania tych jeszcze niewydanych w Polsce.... Smutno......Wg. mnie twórczość Arthura C. Clarke'a była tym co zapłodniło wiele wielkich umysłów technologii i nauki. Dodał jakąś nutkę humanizmu do technologii i pokazał, że nauka jest fajna. Obawiam się, że pokolenie wychowane bez książek Clarke'a nie będzie miało tego czegoś. Tej odrobiny dystansu, że ta technologia "jest super i w ogóle", ale tam z tyłu czy przodu są ludzie, dla których to jest.Btw. ilu ludzi cytujących, że "każda wystarczająco zaawansowana technologia jest nieodróżnialna od magii" wie, że to jedno z praw Clarke'a?


Podobne postybeta
Oko czasu
Odyseja Czasu - Burza Słoneczna
Jestem na książkowym głodzie.....
Żyjemy w trzecim świecie...
Podróżujemy ;-)

Sezon na Chrome

To tak jak sezon na Misia ;-)Tytuły dotyczące Google Chrome z ostatnich około 12 godzin z RSSa tworzonego na podstawie Wykopy i paru innych źródeł:11:36 PM Znaleziono luki w Google Chrome11:36 PM google chrome i googlowy stuff na nim10:36 PM To jest GOOGLE CHROME czy Internet Explorer?9:36 PM Szef Opera Software komentuje premierę Google Chrome9:36 PM Smieszny blad w Google Chrome9:36 PM Google przymyka oko na Money.pl?8:35 PM Komiks Google Chrome, RC 1.8:35 PM Kiedy przeglądarka google się zawiesi....5:38 PM Szybkość: Google Chrome bije na głowę Fx, IE i Safari4:25 PM Chrome wykończy Firefoksa?4:25 PM Jak Mozilla odpowiada na Chrome?3:21 PM Jak dodać AdBlock'a do Google Chrome. Żegnajcie reklamy!3:21 PM Google Chrome - blokowanie reklam3:21 PM Wykryto błąd w zabezpieczeniach Chrom2:13 PM Google wykupi Firefoxa i całą fundację Mozilla?2:13 PM Szef Opery o Chrome: "Z przyjemnością witamy konkurencję"2:13 PM Prezentacja Google Chrome2:13 PM Google Chrome - licencja EULA przeciwko użytownikowi?2:13 PM 7 powodów, dla których warto zakochać się w Google Chrome12:52 PM Pierwsza luka w Google Chrome wykryta12:52 PM Google in Google Chrom10:23 AM Google Chrome - cała prawdaKolor niebieski to informacje neutralne [najczęściej opisy Chrome], żółty to informacja o znalezionej dziurze, reszta to głównie obrazki udowadniające tezę, że Chrome jest do bani.Ciekawe, że w ostatnich godzinach więcej jest tych negatywnych. Ciekawe czy to przypadek, czy może ludzie już się trochę pobawili i teraz doznają powrotu krytycyzmu, czy [i wg. mnie to jest główną przyczyną ;-)] odzywa się w ludziach chęć dokopania ;-)[Ja nadal narzekam na słownik :-) bo kontrolę ortografii muszę przeprowadzać w OpenoOffice.org]


Podobne postybeta
Amerykański zegarek jest trudny ;-)
Zaskoczenie
Google App Engine i DatastoreTimeoutException
Co bym chciał dostać na Google I/O 2014
Ta sama rozdzielczość przy różnych wielkościach ekranu to nie musi być dobry pomysł ;-) czyli o tym, że iPad Mini może boleć w oczy ;-)

środa, września 03, 2008

Duża grywalność

Grywalność to termin zarezerwowany bardziej dla gier komputerowych ;-) Ale bawiąc się od paru godzin Google Chrome stwierdzam, że mimo tego, że czasem się tnie, mimo tego, że polski słownik działa tak jakby go nie było, a wszystko wygląda dość spartańsko, to całość ma wysoką grywalność :-)

Bawiąc się pierwszą betą IE8 ciągle bałem się, że wszystko się wywróci. W przypadku Google Chrome jest lepiej :-) Odczucia mam podobne do tych jakie nachodziły mnie w momencie gdy zacząłem używać praprzodka Firefoksa.

Np. takie zrobienie sobie z GMAILa czegoś podobnego do aplikacji okienkowej to chwila.

Wchodzimy na stronę https://mail.google.com



Wybieramy w menu opcję "Utwórz skróty aplikacji..."



Zaznaczamy gdzie chcielibyśmy mieć skróty :-)



Skrót zostaje stworzony ;-)



A po jego zaklikaniu oczom naszym ukazuje się okienko "aplikacji" :-)



Cała operacja zajmuje chwilę :-) Stąd duża grywalność ;-)


Podobne postybeta
Konieczny pośpiech ;-)
Złe architekty ;-)
Wpisy z Bloggera jako eventy w Google Calendar, odsłona 3 - Aplikacja ;-)
Zgryz laptopowy ;-)
Walka z null'em - pozwólmy działać IntelliJ'owi ;-)

wtorek, września 02, 2008

Niewyspanie - złe skutki niechciejśpizmu ;-)

Właśnie odczuwam skutki niechciejśpizmu o którym ostatnio pisałem ;-)

Skutkiem jest niewyspanie ;-) a to oznacza trudności w koncentracji i obniżenie progów nerwowości ;-) Mówiąc inaczej łatwiej mnie teraz zdenerwować [przez to obniżenie progów], a że trudniej mi się koncentrować to robię błędy i się denerwuję ;-)

[wpis powstał w Google Chrome, w trakcie jego tworzenia znalazłem jeden naprawdę super ficzer tej przeglądarki :-) Jedna z kart zaczęła szaleć i cała przeglądarka zawisła, wystarczyło jednak ubić w Menadżerze Zadań [systemowym, bo do tego z przeglądarki nie miałem dostępu] najbardziej zjadający procesor proces chrome.exe i ta zła karta zginęła a przeglądarka dalej pracuje :-) Z innych fajnych cosiów to właśnie menadżer zadań w którym widać ile która karta bierze procesora, pamięci i jaki generuje ruch sieciowy. Fajną rzeczą może okazać się też możliwość wyjęcia karty i zrobienia z niej osobnego okna, i zachowanie przeciwne. Z wad - słownik polski, jest ale jest dziwny i nie zna wielu słów. Z niewidomych - debugowanie JavaScript, na razie mi się nie udało :-)]

Fajnie komentarz do tego gdzie robię wpis zajął mi więcej niż sam wpis ;-) to pewnie też wynik niewyspania.


Podobne postybeta
Środek tygodnia
Python z urllib = najlepszy menadżer pobierania ;-)
120 km/h, czyżby nowe 140 km/h? ;-)
Dlaczego wybrałem Windows XP dla mojego EEE?
Android - nawet platofrma potrafi przeciwko Tobie knuć ;-)

poniedziałek, września 01, 2008

Lubię plotki ;-)

Plotki w Internecie to fajna rzecz :-)
Na Google Blogoscoped pojawił się wpis o projekcie Google Chrome, który ma być podobno przeglądarką Internetową nad którą pracuje Google. Ma on już mieć nawet swoją stronę internetową, która aktualnie nie działa.
Ale ja nie o tym tutaj :-) Choć wyniki chętnie obejrzę :-)
Wiadomość oryginalna pojawiła się w sieci jakieś 6 godzin temu i już znajduje się do hasła "google chrome" ponad 5000 wyników, co ciekawe gdy spytamy o "google chrome" wyników będzie tylko 1400 ;-)
Pewnikiem już się zaczął etap na którym część bloggerów, ale i dziennikarzy zaczyna działać tak, że przeczytają o Google Chrome na blogu numer A, którego autor powołał się na blogoscoped, później na blogu B, który nie podał źródła, i w końcu na blogu C, który jako źródło podał blog D, który podobnie do B nie podał źródła. Blogger lub dziennikarz na podstawie takiej "kwerendy" napisze, że "według wielu źródeł" projekt pojawi się na dniach i będzie super wypas.
Tak się rodzi plotka. To samo mamy gdy dziennikarze polityczni mówią o wiadomościach z kuluarów, albo o zakulisowych rozmowach ;-) Zwykle nie wiedzą, a jedynie podają plotki które zasłyszeli.
Plotka jest ciekawa, ale mimo wszystko rzetelna informacja to to nie jest.... dopiero jak 2 albo 3 naprawdę niezależne źródła to potwierdzą [zakładamy, że mówimy o czymś co jest tak nowe, że jeszcze nikt tego nie widział] to wtedy to zaczyna być wiadomość, a przestaje być plotka ;-)
A Google Chrome chętnie obejrzę :-)


Podobne postybeta
Za co naprawdę, ale to naprawdę nienawidzę Microsoftu?
Czyżby nowy Macbook się zbliżał? ;-)
Forma nad treścią
Visual Desing Lead w staini Gooogle'a
Zrobię sobie SCJP ;-)

Algorytm ;-)

Gdy napisałem poprzedni wpis o teoretycznej żywotności dysku SSD w EEE PC, zacząłem się zastanawiać jak producent może zwiększyć tą żywotność bez podnoszenia limitu 10000 zapisów.

Problem żywotności sprowadza się w moim odczuciu do problemu najbardziej wyeksploatowanej komórki. Rozwiązaniem powinno być więc zapewnienie by komórki były zapisywane w bardziej równomierny sposób.

Dlatego wydaje mi się, że zwiększenie tego limitu z 10 tysięcy zapisów do 100 tysięcy zapisów jest dość proste w sposób "programowy", gdy ten program wykonuje się na sterowniku dysku.

Rozważmy taki dysk jak w EEE PC, czyli 4GB. Zdefiniujmy pewną jednostkę "logiczno-sprzętową", którą nazwiemy sektor. Ona nie musi mieć żadnego przełożenia na to jak dysk jest widoczny z zewnątrz. Niech sektor ma 512 bajtów.
Na naszym dysku będzie wtedy około 8 mln takich sektorów (dokładnie 8388608 sztuk). Numer każdego z tych sektorów można zakodować na 23 bitach. Przyjmijmy, że dla każdego sektora będziemy zliczali ilość zapisów, które doń wykonano. Wystarczy nam na to 14 bitów. Ponieważ będziemy tą liczbę zapisywać na dysku, a nie chcemy żeby akurat ten obszar okazał się być tym najbardziej zniszczonym [czyli nie chcemy by to któraś z komórek tutaj osiągnęła jako pierwsza limit 10000 cykli] to zapisywać je będziemy w kodzie Graya, dzięki czemu w trakcie zwiększania liczby o 1 będziemy musieli zmienić 1 z 14 bitów, a to daje nam limit około 140 tysięcy zapisów.
Dla każdego sektora będziemy mieli więc na dysku w jakimś jednolitym bloku mapę naszych sektorów i ich liczniki. Na każdy potrzebujemy 37 bitów, czyli zmieścimy się w 5 bajtach [40 bitów]. Łącznie więc ta tablica będzie miała 40MB.

Do tego na dysku w jednym obszarze będziemy zapisywali, także z użyciem kodu Graya liczbę wszystkich zapisów, których dokonaliśmy na dysku. Powiedzmy, że zużyjemy na tą liczbę 8192 bity, czyli 1024 bajtów. Pozwoli nam to zapisać liczby od 0 do ponad 102466, a masz limit zapisów wyniesie dla tego obszaru ponad 80 milionów.

Teraz dochodzimy do algorytmu pracy dysku. Od systemu operacyjnego/BIOSu dysk otrzymuje polecenie zapisu do zadanego obszaru. Sterownik dysku przelicza lokalizację obszaru do zapisu na numer naszego sektora. Zagląda do komórki opisującej ten sektor i odczytuje z niej numer sektora fizycznego [na początku byłyby tam wpisane kolejne liczby], oraz ilość zapisów jakie wykonano do danego sektora. Jeżeli ilość zapisów wykonanych do sektora jest wyższa niż średnia [tu trzeba będzie sprawdzić czy np. nie lepiej założyć, że 2 razy wyższa albo 3 razy...] to sterownik losuje numer "sektora" i sprawdza czy ten wylosowany sektor jest bliższy średniej [lub od niej niższy] niż nasz sektor, jeśli nie to szuka dalej, jeśli tak to zamienia wartości sektorów z mapy i fizycznych sektorów i dokonuje zapisu [nie musi więc zapisywać do nowej komórki starej wartości, a tylko nową, choć i tak zwiększa licznik zapisów dla sektora [teraz już niższy niż poprzednio!] o 1].

W takim przypadku problemem przestają być obszary dysku na których system operacyjny zapisuje w sposób notoryczny. Najbardziej narażone stają się tym razem komórki "noszące" mapę. 14 bitowe fragmenty z licznikiem wnoszą ograniczenie do 140 tysięcy zapisów. Jeżeli jednak te liczby trzymane byłyby nie w tym jednolitym obszarze gdzie jest mapa, ale w fizycznych sektorach to możliwe, że problem by się oddalił. Dodanie drugich 40 MB na drugą mapę zwiększyłoby żywotność do 280 tysięcy razy. Jeżeli zamiast drugiej mapy wprowadzilibyśmy jakiś obszar na którym moglibyśmy zapisywać wartości dla "uszkodzonych" komórek mapy, w taki sposób, że w razie uszkodzenia komórki, oznaczamy ją [mamy jeszcze 3 bity, więc 1 z nich może być flagą "uszkodzony"] i w obszarze za mapą tworzymy nowy rekord z numerem komórki którą zastępuje oraz zawartością tej komórki, to limit powinien wzrosnąć. Problem uszkodzenia nie dotyczyłby przecież wszystkich komórek tak samo, ale powiedzmy 1% ogółu, czyli dodatkowymi 4MB bylibyśmy w stanie zwiększyć limit ze 140 tysięcy do 1,4 miliona.

Wszystko to tutaj to takie gdybania, ale spróbuję wyprodukować jakąś symulację :-) jeśli wyprodukuje i potwierdzi moje tezy to się pochwalę ;-)


Podobne postybeta
Defragmentacja SSD - o tym dlaczego nie należy jej robić
Teoretyczny limit życia dysku SSD w Asus EEE.
Quidam - Cirque du Soleil
Prawdopodobieństwem w quote'e ;-)
O tym o co mam pretensje do Google ;-)