Komputery, oprogramowanie, internet i okolice
Kategorie: Wszystkie | Aplikacje | Blog | Dev | Hacks | Linux | Subversion | Varia | gry | khoomei | książki | mjuzik
RSS
piątek, 04 czerwca 2010

Pod Buzza można podpiąć wiele różnych serwisów - bloga, Google Readera, YouTube'a, konto na Twitterze i by wymienić tylko kilka usług. Czy zastanawialiście się kiedyś, co się stanie gdy postanowicie usunąć raz ustawioną witrynę pokrewną? Co się stanie z buzznięciami pochodzącymi z tego źródła? Czy nadal będą widoczne, a jeśli tak to dla kogo? Co z dyskusjami jakie się pod nimi wywiązały? Postanowiłem to sprawdzić wykonując mały eksperyment.

Ustawienia witryn pokrewnych w Google Buzz

Upublicznienie witryny prywatnej

  1. Dodaję witrynę jako prywatną.
  2. Publikuję buzznięcie, ma status Prywatne.
  3. Buzznięcie jest niewidoczne na profilu, w Gmailu widzą je tylko członkowie grupy.
  4. Zmieniam ustawienie witryny na publiczna.
  5. Publikuję nowe buzznięcie, ma status Publiczne.
  6. Nowe buzznięcie widoczne jest zarówno na profilu, jak i w Gmailu u wszystkich osób, które mnie obserwują.
  7. Buzznięcie wykonane w kroku 2. nadal ma status Prywatne i jest widoczne jedynie dla członków grupy.

Usunięcie witryny publicznej

  1. Dodaję witrynę jako publiczną.
  2. Publikuję buzznięcie, ma status Publiczne.
  3. Buzznięcie jest widoczne zarówno na profilu, jak i w Gmailu u wszystkich osób, które mnie obserwują.
  4. Usuwam witrynę z witryn pokrewnych.
  5. Buzznięcie znika z profilu.
  6. Buzznięcie nadal jest widoczne w gmailu u wszystkich osób, które mnie obserwują.
  7. Osoby, które rozpoczynają mnie obserwować po zmianie statusu witryny nie widzą w Gmailu buzznięcia.

Przywrócenie usuniętej witryny

  1. Ponownie dodaję witrynę jako publiczną.
  2. Publikuję nowe buzznięcie.
  3. Nowe buzznięcie widoczne jest zarówno na profilu, jak i u obserwujących.
  4. Osoby, które rozpoczynają mnie obserwować widzą tylko nowe buzznięcie.
  5. Osoby, które obserwowały mnie cały czas widzą oba buzznięcia.

Zamiana witryny publicznej w prywatną

  1. Dodaję witrynę jako publiczną.
  2. Publikuję buzznięcie, ma status Publiczne.
  3. Buzznięcie jest widoczne zarówno na profilu, jak i w Gmailu u wszystkich osób, które mnie obserwują.
  4. Zmieniam ustawienie witryny na prywatną.
  5. Buzznięcie znika z profilu.
  6. Buzznięcie nadal jest widoczne w gmailu u wszystkich osób, które mnie obserwują.
  7. Osoby, które rozpoczynają mnie obserwować po zmianie statusu witryny nie widzą buzznięcia w Gmailu.
  8. Publikuję nowe buzznięcie, ma status Prywatne.
  9. Buzznięcie widoczne jest tylko w Gmailu u członków grupy.

Przywrócenie dostępu publicznego

  1. Ponownie ustawiam witrynę jako publiczną.
  2. Na stronie profilu pojawia się poprzednio opublikowane buzznięcie publiczne (to które zniknęło).
  3. Osoby, które rozpoczynają mnie obserwować widzą w Gmailu poprzednie buzznięcie.
  4. Opublikowane przed ponowną zmianą buzznięcie prywatne pozostaje widoczne jedynie dla członków grupy.
  5. Publikuję kolejne buzznięcie.
  6. Jest widoczne zarówno na profilu, jak i w Gmailu u osób obserwujących.

Inne uwagi

  • Nawet jeśli usuniemy witrynę publiczną, lub zmienimy jej status na prywatną, to buzznięcie, które za jej pomocą publikowaliśmy nadal można znaleźć z użyciem wyszukiwarki wbudowanej w Buzza. Mimo, że już są niewidoczne na naszym profilu.
  • Zmiana ustawień wpływa tylko na to co widać na profilu. Osoby, które nas obserwowały, czy też komentowały nie zauważą żadnej zmiany.
czwartek, 03 czerwca 2010

Od premiery Google Buzz minęło ledwie kilka miesięcy, a ja właśnie zauważyłem, że wpadłem w niego po uszy. Dlaczego? Dobre pytanie... Zwłaszcza, że większość błędów o których już kiedyś pisałem nie została naprawiona. A mimo wszystko ostatnio więcej czasu poświęcałem na dyskusje na Buzzie, niż na pisanie nowych wpisów na blogu.

Buzz... czyli co?

Łatwiej chyba wytłumaczyć czym według mnie Buzz nie jest. Mianowicie na pewno nie jest mikroblogiem. Od klasycznych mikroblogów różni go praktycznie wszystko. Czy tego chcemy, czy nie, limit 140/160 znaków bardzo silnie wpływa na sposób wyrażania myśli, narzuca używanie skrótów myślowych, uproszczeń. Pisząc na Twitterze, czy Blipie tak się tego nie odczuwa, człowiek przyzwyczaja się do tej wymuszonej zdawkowości i po pewnym czasie zaczyna myśleć w 160 znakach.

Na Buzzie, zamiast zastanawiać się, czy zmieścimy się w limicie znaków, można skupić się na tym co chcemy przekazać, czym chcemy się podzielić. Nie trzeba ograniczać się do prostych komunikatów typu: robię to i owo, obejrzałem/przeczytałem i polecam, mam problem z tym i tym, wpadłem na jakiś pomysł. Bez problemu opiszemy bardziej złożone kwestie, przedstawimy naszą argumentację, opiszemy powody dla których coś uważamy za warte polecenia. Jeśli do tego dodamy proste formatowanie tekstu i możliwość dołączania klipów wideo, zdjęć, czy odnośników do innych stron uzyskamy takiego "prawie bloga", coś na wzór tumblra, czy soupy. Jednak fakt wbudowania Buzza w Gmaila oraz sposób prezentacji (a zwłaszcza sposób sortowania) sprawiają, że czyjejś aktywności na Buzzie blogowaniem również nazwać nie można.

Niekończące się dyskusje

Na mikroblogach pojedynczy status jest w zasadzie zamkniętą całością. Owszem, można się do niego odnieść, można próbować dyskutować (czy to wysyłając wiadomości skierowane, czy to używając cytowań i wzmianek o danej osobie), jednak jest to dosyć utrudnione. Śledzenie dyskusji, zwłaszcza z kilkoma osobami na raz, które w dodatku nie obserwują siebie nawzajem, może być prawdziwym wyzwaniem.

Na Buzzie wygląda to zupełnie inaczej. By coś skomentować nie trzeba nigdzie się dodatkowo logować, wystarczy jedno kliknięcie. W każdym momencie możemy też przejrzeć całą dotychczasową dyskusję. Co najważniejsze komentować może praktycznie każdy, nie tylko obserwujący autora (zawsze można komentować w Buzzie na stronie profilu Google). W dodatku, dzięki sposobowi sortowania buzznięć, zawsze jesteśmy na bieżąco i żadna nowa wypowiedź nam nie zginie. W efekcie pojedyncza wypowiedź nie jest li tylko komunikatem, lecz staje się zaproszeniem do dyskusji.

Ta "dyskusjogenność" Buzza sprawia, że przypomina on trochę fora, czy grupy dyskusyjne. Coś jak stary, dobry Usenet, z długaśnymi wątkami, które z każdą kolejną wypowiedzią oddalały się od początkowego tematu. Bo dyskusja, niejednokrotnie jest o wiele ciekawsza niż wpis, który był do niej impulsem. Zwłaszcza jeśli zgromadzi się w jednym miejscu wielu ciekawych komentatorów.

Ciekawi ludzie

Tak to chyba najważniejszy aspekt buzzowania. Sam na Buzzie obserwuję ledwie garstkę osób. Mimo to, dzięki dyskusjom pod ich wpisami, miałem już okazję poznać naprawdę wielu bardzo interesujących ludzi, z którymi można podyskutować na tematy wszelakie. Gdyby nie oni, prawdopodobnie szybko z Buzza bym zrezygnował. Może miałem szczęście trafić na właściwe osoby, cieżko powiedzieć. Na pewno może być to problemem na samym początku, szczególnie dla osób nietechnicznych, które nie prowadzą blogów, które nigdy nie mikroblogowały.

Zwłaszcza, że jest sporo osób, które idą na łatwiznę i cała ich buzzowa aktywność to zaciąganie treści z Twittera, kanału RSS bloga, czy wrzucanie przypadkowych wpisów z Google Readera. Nie widzę jednak powodów by nimi się zajmować. O wiele ważniejsza jest obecność całkiem sporej grupy osób bardzo aktywnych, o wiele aktywniejszych niż na Blipie, czy Twitterze. Jeśli już takie osoby uda się znaleźć, to potem jest już z górki - wystarczy od czasu do czasu zerknąć co też piszą komentatorzy pod ich buzznięciami.

P.S. A gdyby ktoś chciał zerknąć co też tam buzzuję to zapraszam serdecznie.

piątek, 21 maja 2010

Uwaga, uwaga! Nadjeżdża nowa, jeszcze lepsza, wersja TrollEyBuzza!

TrollEyBuzz - zmiany w wersji 0.2

TrollEyBuzz - klikamy!

Co się zmieniło w wersji 0.2?

  • Już nie trzeba niczego zmieniać w kodzie skryptu, wystarczy sobie wszystko wyklikać.
  • Jeśli zauważymy trolla klikamy w link Troll? (tuż obok Komentarz, Podoba mi się i E-mail) i wybieramy z listy osobnika, którego komentarze chcemy ukryć.
  • Jak w poprzednie wersji możemy w każdym momencie zobaczyć ukryty komentarz i ponownie go ukryć.
  • Tuż obok listy Obserwujących znajduje się licznik trolli, po kliknięciu pojawi się lista osobników, wystarczy jeden klik by osobę, która przestała trollować odblokować.

Instalacja bez zmian - potrzebny jest Firefox z Greasemonkey, a potem tylko klik w Install na stronie skryptu.

Niestety przy okazji urwało od wsparcia dla Chrome (GM_setValue i GM_getValue nie są tam zaimplementowane), polecam więc napisane dla tej przeglądarki rozszerzenie Buzz Troll Remover.

13:30, kosciak1 , Dev
Link Dodaj komentarz »
środa, 19 maja 2010

Muszę przyznać, że Google Buzz bardzo przypadł mi do gustu. Jest to po prostu znakomite miejsce do prowadzenia dyskusji. Niestety i tu potrafią przyplątać się różne internetowe trolle, które potrafią zakłócić każdą rozmowę. Jeśli taki osobnik zacznie nas obserwować, wystarczy delikwenta zablokować i nie będzie już mógł już dodawać swoich komentarzy. Gorzej jeśli jakiś wredny troll pojawi się u kogoś, kogo obserwujemy.

TrollEyBuzz - rozjedź trolla!

TrollEyBuzz i ukryty komentarz

Jednym ze skuteczniejszych sposobów obrony jest zwyczajne zagłodzenie trolla. Wystarczy nie komentować, nie dyskutować, nie reagować na zaczepki, całkowicie zignorować, mając nadzieję, że mu się znudzi i sam sobie pójdzie. Ale jak tu zachować spokój? Przecież palce aż świerzbią by coś takiemu odpisać...

Z pomocą przychodzi TrollEyBuzz - skrypt Greasemonkey, który ukrywa treść komentarzy pisanych przez trolla. Wystarczy skopiować adres profilu niegrzecznego dyskutanta i dodać go do listy trolli. Po ponownym załadowaniu Buzza niechcianych komentarzy już nie zobaczymy. Gdybyśmy jednak bardzo chcieli zobaczyć usunięty komentarz zawsze możemy kliknąć w [...], jednak nie ma co sobie psuć nerwów i podnosić ciśnienia. Jeśli przypadkiem rozwiniemy komentarz trolla możemy szybko kliknąć w [hide], by ponownie go ukryć.

Skrypt ten jest swego rodzaju odpowiedzią na Buzz Troll Remover - rozszerzenie dla Chrome napisane przez Przemelka.

Instalacja

Dla posiadaczy Firefoxa:

  1. Instalujemy Greasemonkey
  2. Wchodzimy na stronę skryptu TrollEyBuzz
  3. Klikamy w wielki przycisk "Install"
  4. Uruchamiamy menu NarzędziaGreasemonkeyZarządzaj skryptami, wyszukujemy na liście "TrollEyBuzz" i klikamy edytuj
  5. Zmienna TROLLS zawiera listę osób do blokowania. Wystarczy w Buzzie kliknąć prawym przyciskiem myszy na imię trolla, skopiować URL i dodać go do listy. Oto przykład listy blokowanych trolli:
    var TROLLS = [
    'http://www.google.com/profiles/brzydkitroll#buzz',
    'http://www.google.com/profiles/123456789012345678901#buzz',
    ];

UWAGA! W wersji 0.2 już nie trzeba nic zmieniać w kodzie skryptu!

Skrypt działa jedynie dla Buzza wbudowanego w Gmail. Na stronie profilu komentarze trolli nadal będą widoczne.

TrollEyBuzz działa również pod Chrome - wystarczy go zainstalować jako rozszerzenie (jednak zmiana listy trolli jest wtedy dość utrudniona, lepiej skorzystać z Buzz Troll Remover). Użytkownicy innych przeglądarek muszą poradzić sobie sami.

Changelog:

wtorek, 11 maja 2010

Wybór odpowiedniego narzędzia do publikowania notek na blogu to poszukiwanie kompromisu między kontrolą, a wygodą. Z jednej strony mamy edycję czystego kodu HTML, jednak wizja martwienia się o domykanie tagów, zamiast o treść wpisu (który staje się zupełnie nieczytelny) jakoś do mnie nie przemawia. Z drugiej strony jest edytor WYSIWYG, który ułatwia pisanie, o ile nie chcemy zrobić czegoś bardziej nietypowego (ileż czasu muszę poświęcić na ręczne dodawanie znaczników <code> w bardziej technicznych wpisach...). Czy jest dostępna jakaś trzecia droga?

KoMar - prosty wiki markup

KoMar markup w akcji

Rozwiązaniem jest użycie tzw. wikitekstu, pozwala to na pracę na zwykłym tekście (możemy więc użyć naszego ulubionego edytora), w który wplatamy proste w użyciu znaczniki. Tylko, czego konkretnie użyć? Textile, ani Markdown jakoś mnie do siebie nie przekonały. Zdecydowałem się zabrać sprawy w swoje ręce.

W efekcie powstał KoMar - prosty wiki markup, silnie inspirowany Creole 1.0. Główne cele to:

  • prostota użycia - składnia musi być naturalna, łatwa do zapamiętania i nie utrudniająca pisania tekstu.
  • czytelność - by mimo użycia dodatkowych znaczników tekst pozostał czytelny.
  • spójność - poszczególne elementy markupu muszą do siebie pasować.
  • wystarczająca ilość elementów - by nie trzeba było poprawiać wygenerowanego HTMLu, z drugiej strony nie wprowadzać zbyt wielu elementów.

Przy okazji chciałem się zmierzyć z problemem parsowania tekstu i trochę pobawić trochę bardziej rozbudowanymi wyrażeniami regularnymi.

Składnia

Do dyspozycji jest formatowanie tekstu:**wytłuszczenie**, //kursywa//, ~~przekreślenie~~, indeks ^^górny^^ oraz ,,dolny,,, jak i ``fragmenty kodu``. Można też określić ((---|wielkość)), ((++|tekstu)), jak i ((red/yellow|kolor)).

Odnośniki otaczamy [[ i ]], oddzielając opis za pomocą | na przykład [[http://kosciak.blox.pl/ | KosciaKowy blog]]. Podobnie z obrazkami, tyle że używamy {{ i }} a po | wpisujemy tekst alternatywny, na przykład {{/img/obrazek.png | Osadzony obrazek}}.

Paragrafy tworzone są automatycznie, oddzielamy je za pomocą pustego wiersza. Wstawiając na początku akapitu [>>], [<<], [><] i [<>] otrzymując odpowiednio wyrównanie do prawej, do lewej, wycentrowanie i wyjustowanie.

Listy tworzy się za pomocą znaków * i #, odpowiednio wcinając poziomy zagnieżdżenia listy, na przykład:

 * element pierwszy listy 
* element drugi
# zagnieżdżona lista wypunktowana
# drugi element listy wypunktowanej
* kontynuacja listy wyższego poziomu

By utworzyć nagłówki wystarczy poprzedzić linię znakami równości:

= Nagłówek 1 =
== Nagłówek 2
...
====== Nagłówek 6

Tekst preformatowany wystarczy otoczyć nawiasami klamrowymi {{{ i }}}. Bloki cytowanego tekstu poprzedzamy znakiem >, tak jak w przypadku pisania wiadomości e-mail. W bloku cytowanego tekstu możemy zagnieżdżać dowolne pozostałe elementy.

Co, gdzie, jak?

Dla osób, które chciałyby zobaczyć KoMara w akcji mogą przygotowałem parser działający online, gdzie można sobie testować do woli. Kod źródłowy parsera (napisanego w Pythonie), oraz plik tekstowy będący rozbudowanym przykładem można przeglądać i pobrać z repozytorium Subversion:

svn co http://kosciak-misc.googlecode.com/svn/python/komar/trunk/

Prace nad projektem KoMar nadal trwają. Muszę jeszcze zaimplementować kilka niezbędnych elementów (przede wszystkim kotwice, zagnieżdżanie plików wideo, oraz tabele), ale jak widać na przykładzie tej notki można już z niego z powodzeniem korzystać.

15:53, kosciak1 , Dev
Link Dodaj komentarz »
niedziela, 09 maja 2010

Do niedawna brak dostępu do internetu oznaczał niemożność pracy nad nowymi wpisami na blogu. A przecież to najlepszy moment! W końcu mamy chwilę gdy, nikt nam nie zawraca głowy przez GG, czy Blipa, nie ma nowych RSSów do przeczytania, filmików do obejrzenia, cisza i spokój. Nic tylko brać się za spisywanie naszych pomysłów. Niestety brak internetu to również brak dostępu do blogowego edytora... Na szczęście ekipa Bloxa postanowiła temu zaradzić.

Bloxer 2

Bloxer 2

Bloxer 2 to edytor blogowych notek dedykowany platformie Blox.pl. Pobrałem, rozpakowałem i właśnie testuję pisząc niniejszą recenzję.

Zalety

Pierwsze wrażenie jest bardzo pozytywne. Co mi się spodobało:

  • Wystarczy pobrać archiwum z programem, rozpakować i uruchomić. Dostępne są wersje dla Windowsa i Linuksa (co dla mnie szczególnie ważne zarówno 32 jak i 64 bitowego). Java była już zainstalowana, więc Boxer uruchomił się bez żadnych problemów.
  • Prostota i czytelność interfejsu użytkownika - jest wszystko to co najpotrzebniejsze i tylko to co najpotrzebniejsze.
  • Mamy do dyspozycji plik pomocy, nie sądzę jednak by był konieczny - od razu wiadomo co i jak.
  • Do dyspozycji mamy edytor TinyMCE, tez sam który jest dostępny na stronie, więc nie powinno być najmniejszych problemów z jego obsługą.
  • Dostępne jest prawie wszystko to co przez www - jest lista naszych blogów, notek, wybór tagów, kategorii, podział na treść i wstęp.
  • Dla wielu osób sporym plusem będzie zastosowanie edytora WYSIWYG również dla wstępu.
  • W trakcie edycji notki są automatycznie zapisywane w krótkich odstępach czasu, a w przypadku zawieszenia się programu przy ponownym włączeniu Bloxer zaproponuje nam wczytanie ostatniej notki.
  • Możemy zapisać na dysku edytowaną notkę - jest więc możliwość swobodnej pracy w trybie offline.
  • Dzięki zastosowaniu biblioteki SWT edytor wygląda natywnie, tak jak inne programy w systemie.
  • Jest to chyba najlepiej prezentujący się edytor blogowy na linuksie spośród tych, które sprawdzałem.
  • Używając Bloxera nie występuje znany problem z interpretowaniem kodu HTML w treści notki przy ponownej edycji.

Wady

Niestety Bloxer 2 nie jest wolny od wad i błędów, które mam nadzieję zostaną wkrótce naprawione (testowana wersja to 0.9.3):

  • Brak sprawdzania pisowni - niestety zdarza mi się popełniać błędy, a nie chcę publikować notek zawierających byki.
  • Brak obsługi wersji roboczych - nie mam możliwości zapisania na serwerze edytowanego wpisu jako szkic, nie ma też informacji na liście notek, czy dany wpis jest już opublikowany czy też nie.
  • Nie ma też dostępu do zasobów bloga. Nie możemy więc skorzystać z wgranego wcześniej obrazka.
  • Nie ustawimy też trackbacka oraz ustawień komentarzy. Jak w poprzednim przypadku to ograniczenie w API Bloxa.
  • Niestety program nie zapisuje na dysku spisu notek i pobranych z serwera wpisów. Za każdym razem musiy na nowo je ładować, co utrudnia korzystanie z Bloxera w trybie offline.
  • Długi czas uruchamiania i pamięciożerność - Monitor systemu pokazuje mi zużycie około 130MB, to sporo jak na edytor dla bloga.
  • Teoretycznie Bloxer zapisuje edytowaną notkę na bieżąco, jednak nie informuje o tym użytkownika. Brakuje mi czegoś takiego jak w Google Docs, gdzie widzę kiedy po raz ostatni zapisano i dostaję informacje o momencie zapisywania.
  • Jest kilka braków w samym edytorze TinyMCE - nie ma możliwości użycia elementu blockquote, wstawienia niestandardowych znaków, nie działa skrót klawiszowy Ctrl-K (wstawianie linków). Pole wyboru czcionki pokazuje wszystkie czcionki zainstalowane w systemie, zamiast pokazać tylko te, które mają sens na blogu.
  • Brak podglądu i edycji kodu HTML notki. Uniemożliwia to wstawienie na przykład filmiku z YouTube, czy użycie niestandardowych tagów (code, acronym). Niestety właśnie z tego powodu, na ten moment, Bloxer 2 nie nadaje się dla mnie do normalnego użytku.
  • Nie ma żadnego menu pod prawym klawiszem myszy. Nie działa też przycisk Menu na klawiaturze.
  • Występuje jakiś dziwny problem ze spacją na końcu linii - czasem magicznie się pojawia, czasem znika (więc naciskając Backspace kasuję ostatni znak).
  • W losowych momentach pojawia się komunikat o zbyt długim czasie działania skryptu Javascript edytora TinyMCE, bywa to dosyć denerwujące.
  • Treść notki jest wyświetlana jakąś dziwną czcionką z pominięciem ustawień hintingu i antyaliasingu. Jednak nie sądzę by dało się coś z tym zrobić. Większym problemem jest pokazywanie tekstu preformatowanego czcionką proporcjonalną, a nie czcionką o stałej szerokości znaków.
  • Naciśnięcie przycisku Tab w polu edycji wstępu powoduje schowanie tekstu, który staje się ponownie widoczny dopiero po zmianie rozmiaru pola tekstowego.
  • Mimo ustawienia automatycznego pomniejszania obrazów i ich konwersji do JPG wstawienie zbyt dużej grafiki w formacie PNG powoduje błąd publikowania notki. Niestety komunikat nic nie mówi o powodach pojawienia się błędu.

Podsumowanie

Ta długa lista wad to raczej efekt mojej tendencji do czepiania się wszystkiego co tylko możliwe (czasem myślę, że powinienem zostać testerem oprogramowania). Podejrzewam, że przeciętny blogger wielu z tych problemów nawet nie zauważy. Wystarczy naprawić kilka najbardziej denerwujących rzeczy (szkice, edycja HTML, sprawdzanie pisowni, błąd końca linii i komunikat o JS) by Bloxer 2 stał się naprawdę świetnym edytorem.

20:26, kosciak1 , Blog
Link Komentarze (4) »
środa, 05 maja 2010

Na blogu pisałem już o różnych szalonych akcjach promocyjnych prowadzonych przez niezależnych twórców gier komputerowych. Ale czegoś takiego chyba jeszcze nie było. Przez najbliższy tydzień będzie można kupić, za tyle ile uważamy, nie jedną, nie dwie, a pięć wspaniałych gier! W dodatku wspomagając przy okazji organizacje pozarządowe!

The Humble Indie Bundle

Już powyższy filmik promocyjny pokazuje, że mamy do czynienia z czymś niezwykłym. W ramach akcji The Humble Indie Bundle można otrzymać pakiet pięciu gier. Pięciu zupełnie różnych gier. Jedyne co je łączy to brak DRMu, wieloplatformowość (działają zarówno pod Windowsem, Linuksem i na Macu), fakt że zostały napisane przez niezależnych twórców. Oraz oczywiście niesamowita grywalność i to mimo wieku niektórych tytułów. Oto wspomniana piątka:

  • World of Goo - o tej grze już pisałem przy okazji urodzinowej promocji, to przepiękna i niesamowicie zabawna gra logiczno-zręcznościowa, w której tworzymy dziwaczne konstrukcje z glutów.
  • Aquaria - w tej grze przemierzamy malowniczy podwodny świat, poznając historię głównej bohaterki.Warto zagrać choćby ze względu na niesamowity klimat, grafikę i muzykę.
  • Gish - to platformówka, w której kierujemy kulą smoły, która zależnie od potrzeb może zmieniać swoje właściwości (może stać się lepka, śliska, ciężka lub elastyczna).
  • Lugaru HD - o niej też już wspominałem na blogu, w wielkim skrócie to trójwymiarowa bijatyka w której sterując krwiożerczym, wojowniczym królikiem walczymy z innymi królikami i wilkami.
  • Penumbra: Overture - połączenie przygodówki, gry typu survival horror i first person shooter.

Jeśli ktoś korzysta z Linuksa warto wcześniej sprawdzić dostępne na stronach twórców dema. Ja z World of Goo, Lugaru i Aquarią problemów nie mam, Gisha nie sprawdzałem, a Penumbra niestety działać nie chce (prawdopodobnie winna jest karta graficzna).

Cena rynkowa tych wszystkich gier to $80. W ramach promocji możemy je mieć za tyle ile chcemy za nie zapłacić. Nie ma tu żadnych pośredników, więc cała nasza suma (potrącona o maluśką prowizję dla operatora płatności - do wyboru PayPal, Amazon i Google checkout) trafi do... tutaj mamy do czynienia z kolejną niespodzianką.

Komu pomagamy

We wcześniejszych promocjach typu "płać ile uważasz" cała zebrana suma trafiała do twórców gier. W ramach The Humble Indie Bundle mamy wybór/ Pieniądze mogą trafić do:

  • twórców gier znajdujących się w pakiecie.
  • Electronic Frontier Foundation - to organizacja walcząca o wolności obywatelskie w internecie.
  • Child's Play - to organizacja, która dostarcza zabawki i gry chorym dzieciom w szpitalach.

Możemy przekazać całość twórcom, całość oddać w ręce organizacji pozarządowych, podzielić równo pomiędzy wszystkich, lub samemu ustalić jaka część kwoty komu ma przypaść.

W chwili obecnej, gdy piszę tę notkę (w około 12 godzin od rozpoczęcia akcji) zebrano już ponad 180 tysięcy dolarów, a udział wzięło ponad 20 tysięcy ludzi. Zachęcam do przyłączenia się bo gry w pakiecie są naprawdę świetne, a i cel szczytny. Jeśli sami nie będziemy grać zawsze możemy sprawić komuś prezent. I proszę mi tu nie pisać o braku możliwości - powinno się udać zdążyć założyć konto na PayPalu i przelać pieniądze przelewem (jeśli ktoś nie ma karty kredytowej).

EDIT:
Okazuje się, że to nie koniec atrakcji! Jeśli ktoś zakupi promocyjną paczkę to za $5 może kupić całe Penumbra Collection! Dodatkowo do akcji dołączyło Amanita Design oferując jako bonus Samorost 2!

10:30, kosciak1 , gry
Link Komentarze (9) »
czwartek, 29 kwietnia 2010

Wczoraj podczas czyszczenia klawiatury wpadł mi do głowy pewien genialny pomysł. Aż zacząłem się obawiać, czy nie odpadnie mi stopa (czasem tak się zdarza). Już tłumaczę o co chodzi.

Czy zastanawialiście się, który z klawiszy jest najrzadziej używany? Oczywiście nie licząc ScrollLock oraz Pause Break. Wiele osób pewnie wskaże Insert. Jest to jednak bardzo użyteczny klawisz, z którego bardzo często korzystam. Ctrl-Insert kopiuje zaznaczony tekst, a Shift-Insert wkleja. Działa to praktycznie wszędzie, również w konsoli. Nie wyobrażam sobie korzystania z klawiatury, na której Insert jest umieszczony w jakimś dziwnym miejscu (a już z kilkoma takimi się spotkałem). Jeśli więc nie Insert, to co?

A kiedy ostatnio korzystaliście z CapsLocka? Ja korzystam z niego bardzo rzadko i w sumie tylko mnie denerwuje. Zwłaszcza, że umieszczony jest w bardzo korzystnym miejscu - środkowy rząd klawiszy, praktycznie tuż pod małym palcem lewej ręki. Przecież mógłby się do czegoś przydać a nie leżeć odłogiem i tylko przeszkadzać jeśli przypadkowo się go naciśnie. Gdy to sobie uświadomiłem doznałem olśnienia, prawie jak Pomysłowy Dobromir.

Kandydat do zajęcia miejsca CapsLocka był tylko jeden - klawisz Escape. Po przesiadce na edytor Vim i Vimperatora stał się moim dobrym przyjacielem. Niestety na dzisiejszych klawiaturach nie jest on umieszczony w tak wygodnym miejscu jak na terminalu ADM-3A. Zacząłem szukać sposobu na bezbolesną zamianę. Google pokazywało jakieś rozwiązania ze skryptami w bashu i użyciem xmodmap. Na szczęście jest prostszy sposób. Wystarczy wejść do menu (System →) Preferencje → Klawiatura → Układy → Inne opcje (może się to trochę inaczej nazywać) → CapsLock key behavior i zaznaczyć Swap ESC and CapsLock. (EDIT: To oczywiście w Gnome. Kak to zrobić w KDE, czy w Windowsie niestety nie wiem. Nie powinno być jednak jakimś wielkim problemem)

Muszę przyznać, że jest to rozwiązanie niesamowicie wygodne. Koniec z sięganiem gdzieś daleko w lewy górny róg klawiatury! Jeszcze czasem z przyzwyczajenia sięgam do ESC, ale to kwestia kilku dni na przestawienie się.

17:45, kosciak1 , Hacks
Link Komentarze (12) »
poniedziałek, 26 kwietnia 2010

Jak powszechnie wiadomo w Linuksie konsola fajna jest. Gdy już poznamy kilka prostych sztuczek okazuje się, że bardzo wiele czynności w konsoli można wykonać o wiele wygodniej i szybciej, niż gdybyśmy mieli przeklikiwać się przez różne okienka. Dziś o jednej z takich sztuczek, jakie oferuje powłoka bash.

Brace expansion

Mechanizm Brace expansion polega na rozwijaniu wyrażeń znajdujących się w nawiasach klamrowych. Do dyspozycji mamy:

  • Rozwinięcie listy: {element1,element2,elementN}
  • Rozwinięcie sekwencji znaków lub liczb: {START..STOP}
  • Dołączanie przedrostka i/lub przyrostka do rozwijanych elementów: przedrostek{foo,bar}przyrostek
  • Powyższe można łączyć ze sobą

Oto kilka przykładów działania brace expansion:

$ echo {foo,bar,baz}
foo bar baz
$ echo {1..10}
1 2 3 4 5 6 7 8 9 10
$ echo {10..1}
10 9 8 7 6 5 4 3 2 1
$ echo {a..z}
a b c d e f g h i j k l m n o p q r s t u v w x y z
$ echo {z..a}
z y x w v u t s r q p o n m l k j i h g f e d c b a
$ echo kot_{1..3}
kot_1 kot_2 kot_3
$ echo {biały,czarny}_kot
biały_kot czarny_kot
$ echo foo_{1,2}_bar
foo_1_bar foo_2_bar
$ echo {{a..z},{A..Z}}
a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
$ echo {A..C}{0..3}
A0 A1 A2 A3 B0 B1 B2 B3 C0 C1 C2 C3

W bashu 4.0 wprowadzono jeszcze dwa ułatwienie, uzupełnianie o wiodące zera i określenie skoku inkrementacji sekewncji

$ echo {01..10}
01 02 03 04 05 06 07 08 09 10
$ echo {1..10..2}
1 3 5 7 9
$ echo {a..z}
a c e g i k m o q s u w y

Brace expansion w praktyce

Wszystko pięknie, ładnie, rozwija i wypisuje, OK. Ale do czego to się może przydać? Jak niby ma to pomóc w codziennej pracy? Na przykład w sytuacjach takich jak poniżej.

Najczęściej pojawiającym się przykładem jest tworzenie za jednym razem całej struktury katalogów:

$ mkdir -p ~/projekty/nowy-projekt/{trunk,tags,branches}
$ mkdir -p zdjęcia/{rodzina,zwierzaki/{koty,psy}}

Kasowanie wielu plików na raz:

$ rm picture_{1..100}.jpg
$ rm /bardzo/długa/ścieżka/której/nie/chce/nam/się/pisać/{plik1,plik2,plik3}

Wylistowanie tylko plików z wybranymi rozszerzeniami:

$ ls *.{png,jpg,gif}

Pobranie archiwum podzielonego na kilka części:

$ wget http://example.com/download/plik.r0{1..5}

Tworzenie kopii pliku, lub zmiana nazwy:

$ mv ~/.bashrc{,.bak}
$ cp ~/.bashrc{,.bak}

By później sprawdzić jakie dokładnie wprowadziliśmy zmiany:

$ diff ~/.bashrc{.bak,}

Prawda, że proste?

16:17, kosciak1 , Linux
Link Komentarze (1) »
czwartek, 22 kwietnia 2010

Jedną z ważniejszych czynności jaką należy wykonać podczas konfiguracji edytora tekstu jest wybór odpowiedniego schematu kolorów. Dobrze dobrane kolory sprawiają, że praca nad kodem to czysta przyjemność, wszystko widać jak na dłoni, nie musimy domyślać się co jest czym. Natomiast niewłaściwe kolory to najprostsza droga do piekących oczu, bólu głowy i narastającej frustracji. Dlatego dzisiaj kilka słów o doborze schematu kolorów w vimie.

Galeria schematów kolorów

vimcolorschemetest

Domyślnie w vimie dostępnych jest kilkanaście schematów kolorów, zarówno tych jasnych, jak i ciemnych. Jeśli ktoś nie ma jakichś szczególnych wymagań powinien wybrać z tego coś dla siebie. Jeśli natomiast domyślne schematy to mało zawsze można poszukać czegoś nowego. Na stronie vim.org w dziale scripts znaleźć można ponad 400 schematów kolorów. Sporo.

By oszczędzić sobie ręcznego ściągania i testowania kolejnych schematów można skorzystać z vimcolorschemetest. Jest to galeria zawierająca wygenerowane zrzuty 428 schematów kolorów. Można przeglądać jak w danym schemacie wygląda kolorowanie kodu w językach HTML, Java, C, Perl i LaTeX. Dla ułatwienia rozdzielono schematy jasne i ciemne. Strony galerii są bardzo duże i potrafią sprawić problemy

Gdy już wybierzemy coś dla siebie wystarczy wrzucić ściągnięty schemat do katalogu ~/.vim/colors i ustawić go za pomocą :colorscheme nazwa

CSApprox

Jeśli ktoś używa gvima nie powinien mieć żadnych problemów. Natomiast jeśli ktoś woli vima w konsoli... to pewnie już się przekonał, że coś jest nie tak przeglądając domyślne schematy. Niestety większość schematów kolorów jest pisana z myślą o środowisku graficznym, a jeśli nawet są ustawione kolory dla środowiska konsolowego to raczej nie wykorzystują dostępnej palety 256 kolorów. Kolory wyglądają źle lub bardzo źle...

Rozwiązaniem problemu jest plugin CSApprox, który całkiem sprawnie znajduje odpowiedniki kolorów kolorów, by schematy na konsoli wyglądały podobnie jak w gvimie. Wystarczy ściągnąć paczkę i rozpakować w katalogu ~/.vim oraz zgodnie z instrukcją dodać dokumentację. Poniżej kilka przykładów CSApprox w akcji - po lewej gvim, po prawej na zmianę vim w 8 kolorach, 256 kolorach oraz 256 kolorach z użyciem CSApprox.

vim vs gvim - evening colorscheme
Schemat evening - w 8 kolorach nie jest tak źle, w 256 wygląda już bardzo źle.

vim vs gvim - darkblue colorscheme
Schemat darkblue - nie wygląda w konsoli źle, choć pewno nie jest ciemnoniebieski, z CSApprox trochę lepiej, ale szału nie ma.

vim vs gvim - desert colorscheme
Schemat desert - bardzo przyjemny, miły dla oka, ciemny schemat. Bez CSApprox w konsoli jest zupełnie nie do użytku.

vim vs gvim - default colorscheme

Schemat defaultowy - w przeciwieństwie do wcześniejszych najlepiej wygląda w konsoli z 256 kolorami. W gvimie kolory wydają się zbyt intensywne.

22:09, kosciak1 , Linux
Link Dodaj komentarz »
1 , 2 , 3 , 4 , 5 ... 39
Spis Treści
Kanały RSS
Add to Google
Add to Netvibes