życie zabija powoli :)

 

28

marca

2009

refleksja nad dzisiejszymi grami komputerowymi

Nigdy nie umialem ubierać myśli w słowa, więc jak zwykle wykorzystam cytat:


KLIK


You, gamers, are, in the end, the people that decide which games get made, and which games don’t. Mindless shooters like Halo and Gears Of War sell by the millions because of you, and because of you buying these games, game studios will only make more of them. Sure, you can make an astonishingly great and jaw-dropping game like Grim Fandango, but if people don’t buy it, nobody is going to make something like that again.

Basically, if a game doesn’t present its players with either violence, tits, or both within the first 5 minutes of playing the game, gamers aren’t going to buy it. And even though I personally don’t have a problem with either tits or [animated!] violence, the amount of attention and detail going into these two elements is just mind blowing. I remember a time when games had nor tits nor violence – yes! – but they were still good. Keen didn’t have tits or violence (or a 3rd dimension for that matter), but it still runs circles around just about any game made today.

A ja się głupi zastanawiałem dlaczego te wszystkie nowe gry (czy to komputerowe czy konsolowe) są w zasadzie takie same :]


Oczywiście generalizuję, ale opis pasuje do najpopularniejszych gier obecnych na rynku. Na szczęście jest jeszcze nisza dla innych gatunków.

 
 

26

marca

2009

z serii „dziwne i szalone wtyczki dla firefox”

Jeżeli tak bardzo kochasz swój edytor że nawet łażąc po sieci nie możesz się z nim rozstać – to jest dla ciebie : KLIK

W skrócie :

The web page will pop up in your selected editor. When you save it, it’ll refresh in the web page.

 
 

25

marca

2009

źle się dzieje na last.fm

Cytując za blogiem last.fm :

Today we’re announcing an upcoming change to the way Last.fm Radio works in some parts of the world. In the United States, United Kingdom and Germany, nothing will change.

In all other countries, listening to Last.fm Radio will soon require a subscription of €3.00 per month. There will be a 30 track free trial, and we hope this will convince people to subscribe and keep listening to the radio.

To że usługa będzie płatna to mogę zrozumieć, ale to że trzy kraje będą ją mieć nadal za darmo, a „reszta świata” będzie musiała płacić – nie bardzo. Na blogu już pojawiają się krzyki oburzenia i deklaracje odejścia rozgoryczonych użytkowników.

Nie dziwię im się. Radia na last.fm za dużo nie używałem, bo najciekawsze dla mnie funkcje i tak były w płatnej usłudze. Najbardziej interesują mnie rekomendacje – dopóki to będzie dostępne dla każdego, tak długo będę korzystać z tego serwisu.


Everything else on Last.fm (scrobbling, recommendations, charts, biographies, events, videos etc.) will remain free in all countries, like it is now.

Moja wrodzona złośliwość każe zapytać jak długo pozostałe darmowe usługi pozostaną darmowe. Nie będę ukrywać że przeszło mi przez myśl że wkrótce inne usługi też staną się płatne.


Znalezione na ktos.jogger.pl

 
 

23

marca

2009

trup z szafy

Kiedy zacząłem pracę, tam gdzie teraz pracuję, zostałem rzucony na „głęboką wodę”. No, tak jakby. Po miesiącu pracy pomagałem przy wdrożeniu systemu u nowego klienta i zaraz potem zacząłem go samodzielnie obsługiwać. Robiłem błędy, mniej lub bardziej fatalne, ale jakoś dawałem radę i się wprawiałem, a dużych problemów nie było. Miałem farta, że o paru z nich nie dowiedział się nikt spoza mojego działu (tak sądzę).


Na pierwszym wdrozeniu coś podkusiło mojego szefa i dał podpuścić się kierowniczce sklepu. Ustawił jeden komunikat na tym sklepie na … niezbyt parlamentarny, w dosyć prymitywnym humorze.

To było w 2007, gdy zacząłem pracę. Pamietam to , byłem przy tym, zaskoczyło mnie to.


Od tamtej pory wiele się zmieniło. Moje niedopatrzenie sprawiło że feralny komunikat pojawił się na innym sklepie (jednym z około 30-40 obecnie otwartych). Rozpętała się afera, w którą zamieszany został zarząd obsługiwanej firmy, jak i tej w której pracuję.


Grozi mi albo obcięcie premii (nie bardzo mnie to martwi, bo dużo jej nie mam) na jakiś czas. W najlepszym przypadku. Albo wykopanie z pracy (oczywiście nikt tego bezpośrednio nie zasugerował, ale umiem czytać „między wierszami”). Nie czuję się szczególnie zmartwiony tym drugim, pomimo tego że ciężko znaleźć w mojej okolicy równie dobrą pracę. Jakoś tak, dziwnie.

A sama świadomośc że jednak mogę pracę utrzymać jakoś mnie … rozczarowuje.

Najlepsze jest to, że klient nie robi z tego afery, tylko zarząd w moim miejscu pracy. Uroki pracy w niedawno powstałej korporacji.

Mam ochotę ich po prostu z tym wszystkim zostawić i niech się sami martwią.

 
 

20

marca

2009

w pułapce schematu

Nie rozumiem tego, i jakos nie zamierzam. Od niedawna przyjąłem za punkt honoru, że w każdym miesiącu zakupię po jedną, dwie płytki audio artystów których najbardziej lubię. Wieża ma co robić, ja mam lepsza atmosferę przy robotach domowych, a i czasami kolegów z pracy pomęczę swoim „gustem” ;-)


Póki co mam ~pół szerokości jednej półki i chwilami kończą mi się pomysły (lub nie ma skąd odkupić krążków), a czasami wylatuje mi z głowy „co dalej” . Wtedy z pomocą przychodzi przypadek. Nie wiem od kiedy, ale w moim życiu prawie wszystkim kieruje głupi (?) przypadek.


Jeden wybór pod wpływem chwili rzutuje na kilka kolejnych lat mojego życia, czy to w drobiazgach, jak zakupy, czy też w ważniejszych rzeczach (szukanie pracy, utrzymywanie znajomości z ludźmi; tudzież brak takowych ;-) ).


Czasami z takich przypadków wyłania się jakiś wzór; jakaś zależność. Właśnie przyłapałem się na tym że robi się ze mnie muzyczny dinozaur – prawie wszystkie płyty audio jakie gromadzę są z przedziału 1997-2005. I przeważnie angielskich wykonawców. Poczułem się więźniem jakiegoś schematu, w jaki się sam wprowadziłem. Nie żeby mi było z tym źle, ale nie lubię być schematyczny. Gdzie się podziało odkrywanie nowej muzyki itp? Najwyższy czas odkurzyć jamendo i poczytać „wróźby” (recommendations) na last.fm ;-)

Sorry za refleksyjne przynudzanie, ale dzisiaj po pracy mam rozmowę z szefem, na nieznany mi jeszcze temat. Mam z tego powodu bardzo czarne myśli, bo nie brzmi to szczególnie ciekawie,chociaz zachowanie szefa nie dało mi powodów do zmartwień (a może właśnie dlatego mnie to niepokoi?). aah, nvm.


To na co będę polować w dalszej kolejności, również pod wpływem chwili :



Z płyty „Very Mercenary” z 1999 roku (khggg ;-)) . Ktoś ma krążek do odstąpienia? :>

 
 

18

marca

2009

szok pouczelniany

TO jest tak prawdziwe, ze az przerażające. Podpisuję się pod tym czym się da :]

 
 

17

marca

2009

psychozagadka

Co to oznacza kryzys wieku średniego przed osiągnięciem takiego wieku?


Czy to znaczy że to zwykła deprecha, czy też że już jestem na „półmetku”, lub nawet dalej ?

 
 

16

marca

2009

etckeeper

czyli scm + potrzeba = matka wynalazku.

etckeeper to narzędzie które umieszcza katalog /etc w repozytorium git/mercurial/darcs/bzr. Doświadczenie z aktualizacją systemów od razu każdemu powie że jest to wyjątkowo pomysłowe (i potrzebne) rozwiązanie, bo zdarzają się dystrybucje gdzie manager oprogramowania „wie lepiej” – twoje configi zostają przeniesione na bok a na ich miejsce umieszczone nowe, domyślne (chyba arch linux tak robi z niektorymi pakietami).


Na razie nic więcej nie napiszę, spróbuję poszukać ebuildu dla gentoo, ostatecznie zrobię własny i zobaczę „z czym to się je”.


KLIK

 
 

11

marca

2009

windows a „logika”

Jak pogłośnić mikrofon w laptopie acer 5920?


utknalem na tym na jakies 30 minut zanim znalazlem rozwiazanie na youtube :D .

Wniosek? – szukaj rozwiązania wszędzie, nawet w najmniej logicznych miejscach ( i nie mam tu na mysli sytuację na filmiku windows, ale i youtube też :D ).

 
 

10

marca

2009

Reinventing the wheel

Szukałem i nie znalazłem. Jak z bazy danych postgresql wyeksportować definicję pojedynczej funkcji, z nagłówkiem, komentarzem i ustawieniem właściciela?

W tekstowym kliencie psql jest \df+ które podaje ciało funkcji, ale nie podaje deklaracji nagłówka i parametrów wejściowych oraz wyjściowych:

\df+ public.test ;
                                                                       List of functions
 Schema |        Name         | Result data type | Argument data types  |  Owner   | Language |                   Source code                    | Description 
--------+---------------------+------------------+----------------------+----------+----------+--------------------------------------------------+-------------
 public | test                | numeric          | id character varying | dbuser   | plpgsql  | \r                                               | 
                                                                                              : DECLARE\r                                          
                                                                                              :   numId numeric;\r                                 
                                                                                              : BEGIN\r                                            
                                                                                              :   numId = to_number(id, 'fm9999999999999990');\r   
                                                                                              :   return numId;\r                                  
                                                                                              : END;\r                                             
                                                                                              :         

No a ja z jakiegoś powodu chcę mieć pełną funkcję, którą mogę „wpuścić” na bazę danych, czyli coś w takiej postaci :

CREATE OR REPLACE FUNCTION public.test (varchar) RETURNS numeric AS
$body$
DECLARE
  ID ALIAS FOR $1;
  numId numeric;
BEGIN
  numId = to_number(id, ''fm9999999999999990'');
  return numId;
END;
$body$
LANGUAGE 'plpgsql' IMMUTABLE;
ALTER FUNCTION test OWNER to dbuser;


Chodzi tu o brakujące nagłówki i zakończenie.


Po kilkunastu próbach ponownego wynalezienia koła – bo pgadmin ma gotowy skrypt do tego celu, tylko zaszyty w kodzie, udało mi się wygrzebać 99% informacji wymaganych do napisania takiej funkcji, na podstawie logów z bazy danych i paru skryptów napisanych wcześniej :

select ‘create or replace function ‘ || schema ||’.’||name || 
      ‘ ( ‘|| pg_catalog.oidvectortypes(args) || ‘) returns ‘ || 
   CASE WHEN proretset THEN ‘setof ‘ 
   ELSE 
     ‘’ 
   END 
   || pg_catalog.format_type(rettype, NULL) || 
   ‘ as\n $body$\n ‘    || body || ‘\n$body$\n language’‘’ || 
    lang || ‘’‘;’ || 
   case when usename then 
     ‘\nALTER FUNCTION ‘||schema||’.’||name||’(’
     ||pg_catalog.oidvectortypes(args)||’) OWNER TO ‘
     ||usename||’;’
   else ‘’ 
   end
   ||
   case when description then
     ‘\nCOMMENT ON FUNCTION’ 
     ||schema||’.’||name||’(’||pg_catalog.oidvectortypes(args)|| ‘IS’‘’ 
     ||coalesce(description,‘x’)|| ‘’‘;’
   else 
     ‘’
   end

   from (


SELECT p.proname AS name, p.oid, p.proargtypes AS args, ds.description , p.prorettype AS rettype, p.proretset, p.probin, p.proisstrict AS strict, p.prosrc AS body, l.lanname AS lang, u.usename, p.prosecdef, p.provolatile, p.proisagg, n.nspname as schema, proargnames, p.proargmodes, p.proallargtypes
FROM pg_proc p
LEFT OUTER JOIN pg_description ds ON ds.objoid = p.oid
INNER JOIN pg_namespace n ON p.pronamespace = n.oid
INNER JOIN pg_language l ON l.oid = p.prolang
LEFT OUTER JOIN pg_user u ON u.usesysid = p.proowner
WHERE n.nspname = ‘‘ —tutaj wpisz schemat
and p.proname=’‘ — tutaj wpisz funkcję
ORDER BY p.proname, n.nspname ) v;


Funkcja nie jest doskonała, nie podaje czy procedura jest immutable/volatile itp, bo jeszcze tego nie znalazłem w bazie. No i pewnie nie działa poprawnie w 100% przypadków, bo nie miała zbyt szeroko zakrojonych testów. Ale na początek może się komuś przydać do dalszych poprawek i skrócenia.

 
 

Miniblog

14 września 2011, 22:19:53 | klucz ssh na gitorious |

Od niedawna przyłapałem się na tym że na gitorious.org przestał działać mój klucz ssh. Próba ponownej instalacji klucza powodowała jego odrzucanie ( " ssh key invalid " ).

Problem polega na tym ze zamiast user@host na końcu klucza trzeba wpisać swój email jaki podaliśmy przy rejestracji w gitorious.org. Być może problem nie dotyczy wszystkich, ale u mnie było to jedyne działające rozwiązanie.

04 lipca 2011, 12:48:34 | Tunelowanie esx po ssh |

Szybka notatka na przyszłość; aby wbić się na serwer ESX za pomocą vSphere poprzez tunel SSH, trzeba przeforwardować porty 443, 902, 903 oraz dodać wpis do hosts postaci

127.0.0.1 esxhost

bez tego nie pójdzie. Posiadanie wpisu określającego 127.0.0.1 jako "localhost" też z jakiegoś powodu nie wystarcza i dostaje się tajemnicze informacje o nieprawidłowym hoście, braku łączności itp.

02 sierpnia 2010, 20:12:02 | [mini] nietypowy problem CUPS |

ERRDOS - ERRbadaccess 
(Invalid open mode.) opening 
remote spool Test Page

W takiej sytuacji należy w windows w wlaściwościach drukarki odznaczyć "drukuj bezpośrednio na drukarkę". Dziwne, ale zostawię to sobie tutaj na przyszłość.