Podobno tyle kosztują części, a efekt zobaczcie sami...
PS Dla mnie wszystko co dotykowe (interfejs, wyświetlacze, tablice itp.) ma duży potencjał i przyszłość...
Podobno tyle kosztują części, a efekt zobaczcie sami...
PS Dla mnie wszystko co dotykowe (interfejs, wyświetlacze, tablice itp.) ma duży potencjał i przyszłość...
Humor na dzisiaj: w przypadku amnezji…
Pozdrowienia od Novella.
Może najpierw zacznę od NetBeans World Tour z okazji których odbędą się spotkania w Poznaniu (25 października) oraz Gdańsku (26 października). Serdecznie zapraszam do rejestracji gdyż przedstawionych będzie wiele nowości w NetBeans 6.5 oraz pojawią się takie osobistości jak: Adam Bien, Toni Epple, Jacek Laskowski, Geertjan Wielenga. Więcej szczegółów oraz rejestracja na polskiej stronie NetBeansWordTour - www.netbeansday.pl.by noreply@blogger.com (WooKasZ) at September 28, 2008 10:59 AM
Dlaczego? Wiele osób nie rozumie, dlaczego główni producenci biznesowych laptopów w swoich konstrukcjach używają wyłącznie analogowych złącz, a cyfrowe są dostępne dopiero w stacjach dokujących (w tym chociażby IBM/Lenovo). Powód jest jednak oczywisty. Laptopy te są przeznaczone dla użytkowników biznesowych, którzy chcąc poprowadzić prezentację w dowolnej sali konferencyjnej najczęściej spotkają się właśnie z takim standardem (prawdę mówiąc, nie widziałem jeszcze sali w której byłoby cyfrowe złącze – nie wspomnę o problemach standardów jaki się z tym od razu rodzi). Gdy potrzebują złącze cyfrowe, po prostu podłączają komputer przez stację dokującą.
PS Nie wyobrażam sobie noszenia z komputerem przejściówki DVI -> D-SUB – pierwsza rzecz, jaką bym zgubił albo zapomniał.
by noreply@blogger.com (WooKasZ) at September 24, 2008 02:21 PM
W moich ulubionych linkach znalazłem pewną zwariowaną rzecz, która jakiś czas temu wywarła na mnie dość duże wrażenie. Otóż w 2006 roku niemcy postanowili pobić wszelkie rekordy i odpalić Windowsa XP na najwolniejszej maszynie, na jakiej kiedykolwiek ten system mógł potencjalnie pracować. Więcej o samym eksperymencie przeczytacie tutaj. Z pewnością ciekawa lektura!
PS Powtórzony został też ten sam tez z Vistą, jednak nie był aż tak spektakularny (najniższe taktowanie wyniosło 45Mhz). Więcej tutaj.
Od dwóch miesięcy używam nowej wersji VMware Workstation – 6.5. Co prawda produkt ten nie jest jeszcze dojrzały (wciąż trwa program beta), ale w pewnym sensie poczyniono duży krok do przodu w wirtualizacji na komputerach osobistych. Nowe funkcjonalności, które niesie ze sobą wersja 6.5 zostawiają konkurencję daleko w tyle. Zwłaszcza Virtual PC pozostaje ubogim odpowiednikiem VMware Workstation, ponieważ w tej chwili jego funkcjonalność nie dorasta nawet do wersji 6, a co dopiero do nowych możliwości 6.5. W nowej wersji produktu VMware się przede wszystkim sprzętowa akceleracja grafiki (zgodna z DirectX 9.0), liczne usprawnienia związane z integracją systemu gościa z systemem nadrzędnym, lepsza obsługa urządzeń peryferyjnych (w tym USB – faktycznie działa znacznie stabilniej) oraz przede wszystkim tryb Unity.
Czym więc jest wspomniany tryb? To próba "pogodzenia" ze sobą wielu wirtualnych maszyn na jednym pulpicie. W tym trybie tryb graficzny systemu gościa wykorzystywany jest jedynie do rysowania okienek (zarówno Linux jak i Windows), a faktycznym menadżerem okien pozostaje system nadrzędny, w którym uruchomiliśmy wirtualną maszynę. Dostęp do programów mamy w specjalnie przeniesionym menu, a okna poza oryginalnymi dekoracjami w 100% poddają się zachowaniom naszego nadrzędnego systemu. Co ważne tryb ten działa teoretycznie we wszystkie strony – zarówno w Linuxie jak i Windowsie, zarówno z systemem gościem w formie Linuxa jak i Windowsa.
Nie ma jednak róży bez kolców. VMware Unity na chwilę obecną działa na zasadzie łapania obrazu przez VMware Tools i przesyłaniem go do nowych okienek w systemie nadrzędnym. Na tak wysokim poziomie trudno o jakąkolwiek akcelerację grafiki. Zwiększa to także zużycie procesora, a w obecnej wersji występują problemy z bardziej zaawansowanymi kontrolkami (tymi, które wymagają wielu przerysowań podczas pracy). Może w przyszłości programiści VMware pokuszą się o dostęp do trybu graficznego na poziomie sterownika? Ciekawi mnie też, jak rozwiązali podobną funkcjonalność na Macach w VMware Fusion.
Map<String, List<String>> anagrams = new HashMap<String, List<String>>();może być zastąpiony przez:
Map<String, List<String>> anagrams = new HashMap<>();Ta zmiana zdecydowanie potrzebna. Wyeliminuje te tasiemce w kodzie:)
String str = "test";
switch(str) {
case "test":
System.out.println("TEST!");
break;
case "test2":
System.out.println("TEST2");
break;
default:
System.out.println("KLOPS!");
break;
}
public property String name;
do (BufferedInputStream bis = ...; BufferedOutputStream bos = ...) {
// ...
} // tutaj zmienne bis i bos zostaną usunięte z pamięci
class Micky {
public void scream() { // ... }
public void waveHand() { // ... }
public void talk(String text) { // ... }
}
Micky micky = new Micky();
micky.scream().waveHand().talk("Hello, world!"); Ale szczerze to nie sądze aby to wprowadzono ;-)try {
mbs.registerMBean(mbean, name);
} catch (InstanceAlreadyExistsException e) {
System.err.println(e);
} catch (MBeanRegistrationException e) {
System.err.println(e);
} catch (NotCompliantMBeanException e) {
System.err.println(e);
} Teraz to będzie mogło być zastąpione taką konstrukcją: try {
mbs.registerMBean(mbean, name);
} catch (InstanceAlreadyExistsException |
MBeanRegistrationException |
NotCompliantMBeanException e) {
System.err.println(e);
} Po prostu rozdzielamy typy wyjątków operatorem | i obsługujemy wszystkie w jednakowy sposób.by noreply@blogger.com (WooKasZ) at September 13, 2008 11:16 AM
Dzisiaj przypada 256-ty dzień roku i z tej okazji obchodzony jest DZIEŃ PROGRAMISTY. Dzień ten wypada 13 września, ale jako że mamy rok przestępny to 12 września. Dlaczego w 256-ty dzień roku? Chyba każdy czytający informatyk się domyśla
a jeśli nie informatyk to już tłumaczę. Otóż odpowiedz jest bardzo prosta. Dwa podniesione do potęgi ósmej to 256 i jest to liczba wartości możliwych do uzyskania w jednym 8-bitowym bajcie…
Z okazji tej wszystkim kolegą, programistą życzę WSZYSTKIEGO NAJLEPSZEGO!
A poniżej typowy dzień programisty i życzę również aby nie dochodziło do ostatnich kroków…

Od miesiąca na mojej stronie miałem problem ze spamem, jaki zaśmiecał moje komentarze do postów. A wszystkie po to aby zareklamować jakieś serwisy w swoich linkach. Co dzień było ich coraz więcej, aż dochodziły do niestety dużej ilości, bo aż około 20 dziennie co było strasznie uciążliwe. A spamowanie moich komentarzy to i spamowanie mojej poczty, ponieważ dostaję informacje mail-owo o nowych komentarzach. Na ratunek uaktywniłem usługę CAPTCHA dzięki której wysyłanie komentarzy poprzez boty stało się nie możliwe.
Generowane losowo liczby, bądź słowa, które użytkownik(człowiek) musi wpisać aby formularz został poprawnie wysłany publicznie sprawia wiele kontrowersji. Przede wszystkim dla zwykłego użytkownika jest to strasznie uciążliwe ciągłe wpisywanie losowo generowanych znaków, czasami strasznie nie czytelnymi dla ludzi starszych, i nie tylko. Ale niestety im obrazem jest bardziej zniekształcony tym bardziej jest bezpieczny i mniej czytelny dla bot-ów (chociaż to nie sprawdza się w każdym serwisie). Dla zainteresowanych więcej o CAPTCHA można poczytać w artykule Webhosting. Dla ciekawości wielu programistów twierdzi, że CAPTCHA jest złe i nie należy tego używać, z kilku powodów a przede wszystkim tym, że każdą CAPTCHA można zawsze złamać. Jak nie CAPTCHA to co? Może ASIRRA? Która została zaprezentowana przez Microsoft podczas TechFest 2007. Idea jest prosta - przed wysłaniem formularza użytkownik musi zaznaczyć spośród określonej liczby zdjęć, zdjęcia kotów. Zdjęcia za każdym razem są inne, jak i zbiór tych zdjęć. Zaletą tego projektu jest to, iż człowiekowi łatwiej odróżnić kota od psa niż główkować się co jest wygenerowane w obrazku z CAPTCHA. Jednak wydaje się to trochę czasochłonne, bawiąc się i oglądając zdjęcia. Dużym problemem jednak jest problem osób niewidomych, gdzie w CAPTCHA jest to rozwiązane odsłuchem głosowym, a w ASIRRA jest to problem jeszcze nie rozwiązany…. Więc co tutaj chwalić
Na koniec chciałbym przedstawić to jak CAPTCHA została, źle zrozumiana na koncie studenckim mojej uczelni…

Jest to po prostu jawnie wpisany kod a nie obrazek, który owszem zmienia się po załadowaniu strony, ale to nie w tym sens… po prostu utrudnianie życia studentom…
Jeszcze w sierpniu pojawiła się druga wersja beta Internet Explorera 8. Nie będę rozpisywał się o wszystkich nowościach. Ograniczę się do tych funkcji, na które szczególnie zwróciłem uwagę.
WebSlices – rewolucji chyba nie będzie. Przy wszechobecnych paskach z gadżetami tworzenie kolejnego formatu mini-stron WWW i to na dużym ekranie chyba mija się z celem. Można tego używać wyłącznie z kompatybilnymi stronami – to samo da się zrobić na wszelakich sidebarach i to pewnie jeszcze lepiej. Liczyłem na coś więcej…
InPrivate Browsing – całkiem ciekawa sprawa. Podoba mi się idea i samo wykonanie. Po wejściu przeglądarki w ten tryb na dysku nie są zapisywane żadne informacje o odwiedzanych stronach – ani w formie historii, ani ciasteczka, ani nawet pliki tymczasowe. Chyba nie muszę mówić o przydatności tego rozwiązania – ot. Choćby gdy korzystamy z czyjegoś komputera.

Search Suggestions - Pasek wyszukiwania dostał nową funkcjonalność – potrafi łączyć się z wyszukiwarką i pobierać podpowiedzi do wpisywanych haseł. Do tego wygodniej wybiera się aktualną wyszukiwarkę.

Accelerators – ciekawa funkcja szybkiego dostępu do operacji na zaznaczonym tekście (jak chociażby wysłanie ich do własnego bloga). Niestety nie miałem czasu tego skonfigurować – trochę przytłacza mnie liczba rzeczy, które musiałbym w nowym IE skonfigurować sam, żeby stały się wygodne…

Suggested Sites – nie wiem jakie dane to wysyła do Internetu, ale działa mizernie. Strony, które mi "sugeruje" są najczęściej niewiele warte. Dodatkowo nie potrafię (a może się nie da?!) przeglądnąć po całym dniu surfowania co jeszcze warto zobaczyć – sugerowane strony dotyczą tylko kilku ostatnio odwiedzanych!

Karty zyskały kolorowanie na zasadzie podobnych stron. Gdy otworzy się jakiś odnośnik w nowej karcie automatycznie dostają one ten sam kolor.
Silnik renderujący nie powala, ale jest za to szybszy od tego z IE7. Co prawda ACID2 przechodzi bez najmniejszego problemu, ale z ACID3 radzi sobie gorzej niż konkurencja. Warto jednak zaznaczyć, że każda nowa karta to nowy proces (podobnie realizuje to nowy Chrome od Googli). Takie rozwiązanie jest dobrym posunięciem. Wyobraźmy sobie sytuację, gdy przeglądana strona "wysypie" nam przeglądarkę. W tym wypadku nie zostanie już zamknięta cała przeglądarka, a jedynie dana karta. Do tego przywracanie stron po zamknięciu przeglądarki jest znacznie sprawniejsze – nie jesteśmy pytanie o zachowanie otwartych kart do następnej sesji przy wyjściu z przeglądarki, a przy wejściu.
Dodatkowo pozostał przycisk kompatybilności wstecz i możemy przeglądać strony "starym silnikiem".

Na koniec trochę o estetyce nowej przeglądarki. Graficznie zmieniło się niby niewiele, a jednak. Usunięto ikon z kart w pasku ulubionych/rss/historii, usunięto ikonę szybkiego dodania do ulubionych, kartom "spłaszczono" interfejs, a kolorowanie ich pozostawia wiele do życzenia. Do tego dodawanie standardowej ikony wyszukiwarkom, które nie mają własnego favicon jest delikatnie mówiąc de mode (przynajmniej tutaj wygląda to brzydko).



Na koniec tylko słów kilka o drugiej, bardziej niespodziewanej nowości – Google Chrome. Nie będę rozpisywał się o samej przeglądarce, bo jej po prostu jeszcze nie testowałem, ale widziałem, że wiele witryn chwaliło ją za "zdobycie 1% rynku po 24 godzinach". No ja przepraszam, ale gdyby na stronie głównej najpopularniejszej wyszukiwarki wstawić link do tekstowego lynxa, to też po 24 godzinach używałoby go 1% internautów.
Sznurki:
public interface RecordFilter {
boolean matches(byte[] candidate);
}import javax.microedition.rms.RecordFilter;
/**
*
* @author -WooKasZ-
*/
public class PositiveFilter implements RecordFilter {
public boolean matches(byte[] candidate) {
// zakładamy, że rekordy są 4 bajtowe i zawierają liczbę typu int
return Integer.parseInt(new String(candidate)) > 0; // bleee można to ładniej zrobić ?
}
}
public interface RecordComparator {
int compare(byte[] rec1, byte[] rec2);
}import javax.microedition.rms.RecordComparator;
/**
*
* @author -WooKasZ-
*/
public class SortComparator implements RecordComparator {
public int compare(byte[] rec1, byte[] rec2) {
int first = Integer.parseInt(new String(rec1));
int second = Integer.parseInt(new String(rec2));
if (first == second)
return RecordComparator.EQUIVALENT;
if (first > second)
return RecordComparator.FOLLOWS;
return RecordComparator.PRECEDES;
}
}
by noreply@blogger.com (WooKasZ) at September 09, 2008 03:26 PM
Ponieważ po ostatnim wyjeździe udało mi się już wszystko ogarnąć, mogę napisać kilka słów i obserwacji dotyczących Cypru i Włoch oraz bezpieczeństwa latania samolotami.
Cypr Na przełomie lipca i sierpnia byliśmy tydzień na Cyprze. Wrażenia? Dziwne, ale z góry zaznaczam, że nie oznacza to, że złe. Zostałem raczej kompletnie zaskoczony. Spodziewałem się typowego, południowego krajobrazu i kultury w państwie leżącym daleko na wschód w basenie Morza Śródziemnego. Spodziewałem się też odrobiny egzotyki, chociażby ze względu na położenie geograficzne. Sięgając jednak odrobinę do historii Cypru, nie trudno zauważyć, że od 1925 roku wyspa była oficjalnie kolonią brytyjską. Już ten fakt sugeruje, że ten teren wcale nie musi być tak egzotyczny jak się wydaje. Kolejny aspekt historyczny to podział Cypru na dwie części – południową (grecką) oraz północą (utworzoną tam przez Turków cypryjskich Republikę Turecką Cypru Północnego, która do dziś nie została uznana przez żadne państwo poza Turcją). Zwiedziliśmy część południową, do północnej zbliżyliśmy się w stolicy Cypru – Nikozji – jednak nie przekroczyliśmy jej chociażby ze względu na to, że wypożyczony samochód nie miał tam ubezpieczenia. Na granicy stacjonują cały czas siły ONZ, więc całość wygląda dość dziwnie – państwo należące do Unii Europejskiej na małej wysepce, na której znajduje się też druga republika nieuznawana przez żadne państwo świata poza Turcją.
Z wyglądu Cypr Południowy ma góra 50 lat. Trudno tu szukać starszych zabudowań czy starożytnych zabytków. Owszem, jest kilka miejsc, które mają poważne znaczenie historyczne, jak chociażby wszystko to, co wiąże się z boginią płodności i miłości – Afrodytą – ale skala tych zabytków w porównaniu z dziedzictwem Krety czy całej Grecji jest nieporównywalna. Co więc na Cyprze jest fascynujące? Przede wszystkim przyroda – liczne gaje bananowe, góry Troodos, przepiękne morze… nocne kluby, które zamykają się dopiero po wschodzie słońca.
Na Cypr najwięcej turystów przyjeżdża z Wielkiej Brytanii. Czują się tu jak w domu – wszechobecny jest tu angielski (miejscowi używają go poza cypryjskim), do tego ruch lewostronny i brytyjski (wysoki) standard hoteli. Wyjazd na tę wyspę na wakacje wiąże się raczej z koniecznością wynajmu samochodu – domowych wypożyczalni jest tu cała masa, jednak trzeba pamiętać o jednym – ruch lewostronny powoduje, że rzadko która wypożyczalnia decyduje się dać pełne ubezpieczenie. Dodatkową przeszkodą może być wymagany minimalny wiek osoby wypożyczającej samochód – 25 lat. Jedynie międzynarodowe sieci wypożyczalni oferują młodszym kierowcom samochody za nieco wyższe opłaty.
Co warto zwiedzić i zobaczyć? Jest kilka takich miejsc – przede wszystkim północne i południowe wybrzeże (okolice Polis na północy wyspy szczególnie przypadły nam do gustu). Kolejna wyprawa to góry Troodos i tamtejsze klasztory. Dalej jezioro Evretou i okoliczna wioska, która niemal 50 lat temu została zrujnowana przez trzęsienie ziemi i jest teraz opuszczona (takie małe safari – przyda się tu jednak samochód terenowy, zwykłą osobówką nie ma co próbować). Stanowczo odradzam plażę Coral Bay (lub jak inni mówią Coral Beach) – na tę sztuczną, usypaną z piasku, dość dużą plażę zjeżdża się w sezonie cała wyspa (jedyna piaszczysta plaża?) i nie ma gdzie szpilki włożyć, nie wspominając o tym, co dzieje się w wodzie. Warto też wybrać się nocą (gdy już zmrok na dobre zapadnie) do dzielnicy nocnych klubów w Pafos – niepowtarzalna atmosfera i klimat tego miejsca…
Włochy i Rzym Drugi wyjazd był początkowo podróżą do Rzymu, ale ostatecznie zwiedziliśmy też trochę wybrzeża i Neapol, chociaż to kropla w morzu możliwości turystycznych tego kraju.
Rzym zwiedzaliśmy ostatecznie około 4 dni. Miasto przepiękne – myślę, że nawet po kilku latach mieszkania tam zaskakiwałoby mnie czymś nowym. Pierwszą rzeczą, którą zobaczyliśmy, było centrum Rzymu – co chwilę jakiś zabytek, co chwilę piękne i ciekawe miejsca (szczególnie fajne są tu place, które mają swój niepowtarzalny charakter). Następnie zwiedzaliśmy część starożytną – rozległość i liczba zabytków porównywalna z Akropolem znanym nam wcześniej z Aten. Na końcu Koloseum, które jednak trochę mnie rozczarowało (może dlatego, że znałem wcześniej koloseum w Puli). Kolejna część wędrówki po Rzymie to Watykan. Nie obyło się oczywiście bez zwiedzania Rzymu nocą – naprawdę przepiękne miasto!
Po zwiedzeniu stolicy Włoch skierowaliśmy się na południowo-zachodnie wybrzeże w okolice miejscowości Latina. Piasek, słońce, plaża… Miejsce, do którego zagraniczni turyści raczej nie docierają (a przynajmniej my nie widzieliśmy), chociaż to typowy nadmorski kurort (aczkolwiek spokojny, pozbawiony raczej klubów i nocnego życia). Wspaniałe miejsce, gdzie można wypocząć i zobaczyć, jak robią to Włosi.
Po dwóch dniach pobytu nad morzem skierowaliśmy się jeszcze dalej na południe, do Neapolu. Miało to być drugie duże miasto, które będziemy zwiedzać. Tutaj przeżyliśmy jednak szok. Wiedzieliśmy wcześniej, że północ Włoch jest częścią bogatą (Mediolan, Rzym…), a południe (włoskie Mezzogiorno) jest częścią biedniejszą i bardziej zaniedbaną (Neapol), ale takiego kontrastu nikt się nie spodziewał. Neapol to tak naprawdę gęsta siatka wąskich uliczek przechodzących między kamienicami z początku ubiegłego wieku (albo i starszych). Tamtejsi mieszkańcy (trudno powiedzieć, jaki jest ich faktyczny stan majątkowy) raczej nie przywiązują wagi do rzeczy materialnych – żyją na wpół na ulicy, mieszkają w miniaturowych mieszkaniach, często w piwnicach – w porównaniu z Rzymem i jak na warunki zachodnioeuropejskie można by powiedzieć, że są to slumsy. Wszystkie zabytki są przeważnie porzucone i się rozsypują (niejeden stary kościół zabity deskami tam widzieliśmy). Jest też bogatsza część na wzgórzu Vomero, która przypomina Rzym, ale mieszkają tam wyłącznie bogatsi, a prowadzą do niej liczne kolejki górskie (tak więc obie części są w pewnym sensie odcięte od siebie). Neapol warto było zobaczyć ze względu na możliwość rzucenia okiem w stronę Wezuwiusza, który rzeczywiście doskonale widać z wybrzeża, usianego portami i porcikami. Poza Castel Nuovo przy głównym neapolitańskim placu posiedzieliśmy sobie przy ulubionym przez nowożeńców Zamku Jajecznym (Castel dell'Ovo). Z tą średniowieczną twierdzą wiąże się legenda o tym, że dopóki włożone pod fundamenty zamku jajko Wergiliusza leży nietknięte, miastu nie grozi nic złego.
W drodze powrotnej zatrzymaliśmy się jeszcze w Cassino, aby zwiedzić klasztor benedyktyński na Monte Cassino. Dostać się do niego można pieszo, idąc długą i krętą górską drogą, lub busem, który jeździ trzy razy dziennie. Z klasztoru rozciąga się piękny widok na Cassino oraz całą dolinę, w której leży miasteczko. Nie zdążyliśmy niestety zejść na położony niżej cmentarz polskich żołnierzy, którzy polegli w walkach z hitlerowcami w obronie opactwa w 1944 roku. Cmentarz jest widoczny z jednego z tarasów klasztoru.
Oprócz kilkuset zdjęć, które zrobiłem we Włoszech postanowiłem też zrobić jeden model w PhotoSynth. Efekt nie jest najgorszy, ale widać zbyt małą liczbę ujęć placu Świętego Piotra. Zobaczcie sami:
Na koniec słów kilka o bezpieczeństwie na lotniskach, które podobno zostało podniesione po 11.09.2001. Otóż przypadkiem – z głupoty i nieświadomości – w moim podręcznym plecaku podróżnym zostawiłem scyzoryk, którego używałem podczas wyjazdu i potem nie przepakowałem do większego plecaka na czas lotu. Podczas przechodzenia przez bramki do hali odlotów na lotnisku Fiumicino i prześwietlania mojego plecaka ochrona nie zauważyła go, a ja zorientowałem się, że go mam, dopiero chcąc wyciągnąć portfel w strefie bezcłowej. Może to trochę niepokoić, ale po wydarzeniach z 2001 roku, gdyby ktoś nawet próbował cokolwiek robić w samolocie, reszta pasażerów chyba rzuciłaby się na niego i rozerwała na strzępy. Ale nie zmienia to faktu, że pogranicznicy mogliby chociaż patrzeć na to, co prześwietlają.
SELECT
TABELA1.KOLUMNA
FROM
TABELA1
WHERE
TABELA1.INNA_KOLUMNA > 10
UNION
SELECT
TABELA1.KOLUMNA
FROM
TABELA1
WHERE
TABELA1.INNA_KOLUMNA 50
ORDER BY TABELA1.KOLUMNA
Invalid command invalid ORDER BY clause
SELECT
TABELA1.KOLUMNA
FROM
TABELA1
WHERE
TABELA1.INNA_KOLUMNA > 10
UNION
SELECT
TABELA1.KOLUMNA
FROM
TABELA1
WHERE
TABELA1.INNA_KOLUMNA 50
ORDER BY 1
by noreply@blogger.com (WooKasZ) at September 07, 2008 04:35 PM

Po wczorajszej premierze Google Chrome i przeczytaniu krótkich recenzji zdecydowałem się zainstalować nowo powstałą przeglądarkę i krótko opisać pierwsze wrażenia. Otóż jak dla mnie start nowego produktu Google zdecydowanie się udał… pierwsze wrażenie pozytywne, moje jak i innych. Główne i najważniejsze cechy moim zdaniem to bardzo uproszczony i przejrzysty interfejs, bardzo szybka - po załadowaniu kilkunastu zakładek żadnego zająknięcia, szybka instalacja co jednak dla mnie informatyka nie jest do końca rzeczą pozytywną (sam nie mogłem zlokalizować miejsca instalacji przeglądarki) zaledwie jeden przycisk “instaluj” i określenie czy mają zostać pobrane zakładki i historia z Firefox-a, czy też nie. Co mnie również zdziwiło produkt w wersji polskiej mimo iż jest to wersja beta… Wizualnie wygląd…? hmmm? nie ma co dyskutować bo to kwestia gustu… jak dla mnie pozytywnie… kolor niebieski z Visty został zachowany
Ogólnie mówiąc jest to typowo prosta i przejrzysta przeglądarka internetowa bez wielu opcji, co chyba jest spowodowane wersją beta lub po prostu uproszczeniem przeglądarki co dla wielu niedoświadczonych użytkowników będzie rzeczą pozytywną. Po kilku godzinach zabawy z Chrome nie zauważyłem żadnych poważnych błędów co w pierwszej wersji beta każdego produktu jest rzadko spotykane… Po takim starcie wydaje mi się, że Chrome zdecydowanie będzie konkurował z IE jak i Firefox-em czy Operą. Właśnie jeśli mowa już o przeglądarkach kilka dni temu w sieci przeczytałem, że nowo powstająca przeglądarka IE8 ma straszne zapotrzebowanie na pamięć, co udowodniono według testów przeprowadzonych w laboratoriach Devil Mountain Software. Internet Explorer 8 beta 2 wymaga ponad dwukrotnie więcej pamięci niż Firefox 3.0.1 i uruchamia sześć razy więcej procesów niż przeglądarka Mozilli. Po wielu krytykach na system Vista, który bez uzasadnienia pochłania olbrzymie wymagania sprzętowe firma z Redmond nie odgoni się od ciągłej krytyki… Wracając do Google Chrome pozostaje nam czekać na kolejne wersje tego produktu…
Pracując przy projekcie, który bardzo mocno wykorzystuje obliczenia matematyczne, po raz pierwszy natknąłem się w praktyce na ograniczenia pamięciowe. W pierwszych wersjach systemu nie udało nam się tych ograniczeń zauważyć, gdyż operowaliśmy na małych próbkach danych rzędu 1000x20. Oczywiście należało sprawdzić działanie także dla większej próbki danych i wyskoczyło nam pierwsze z ograniczeń.
Początkowo prace deweloperskie przeprowadzane były na maszynie z systemem 32bitowym z pamięcią 4GB. Występuje tutaj zjawisko ograniczenia pamięci dla procesu do 2GB (ewentualnie do 3GB z odpowiednim przełącznikiem). Przez jakiś czas wystarczał nam obecny limit... Ale po co się ograniczać skoro procesory są 64bitowe? Tak więc po przeinstalowaniu systemu na Windows Server 2008 x64 nastąpiła przedwczesna radość z praktycznie zerowymi limitami (nie mam do dyspozycji serwera z 2TB pamięci RAM
).
Pierwszym problem przy uruchamianiu aplikacji pojawił się z bibliotekami matematycznymi Intel Math Kernel Library, były jeszcze 32bitowe, ale nie sprawiło dużo kłopotów przerobienie jej na wersję 64bitową (aczkolwiek trzeba było trochę doczytać;P ).
W końcu z wielką radością w oczach aplikacja została odpalona i można było patrzeć jak rośnie słupek zajętości pamięci przez proces, urósł do około 4GB. No dobra, ale jakie tutaj są ograniczenia? Okazuje się, że najbliższym limitem jest ciągł obszar jaki można zaalokować. Próba zdefiniowania tablicy typu Byte o liczbie elementów większej niż 2^31 zakończyła się porażką (mniejszą bądź równą - należy wziąć jeszcze narzut platformy .NET - jak najbardziej udało się zaalokować). Dlaczego akurat tablica może mieć rozmiar tylko 2GB? No cóż, wina leży po stronie platformy .NET i środowiska CLR.
Następny krokiem była próba zaalokowania kilku tablic po 2GB każda. Niestety po 6 takich wyświetlił mi się wyjątek OutOfMemoryException (patrz rysunek)
Przyczyną braku pamięci zapewne była wielkość pliku wymiany, gdyż odpowiedni licznik pokazywał ładną liczbę 15999MB (rysunek). Zajętość co prawda wyniosła 14484MB, ale kolejne 2GB tutaj już się nie mieszczą
Ostatecznie muszę stwierdzić, że o ile limit 2GB na wielkość ciągłej pamięci do zaalokowania może boleć (należałoby się zagłębić bardziej w jaki sposób można to obejść), to obszar pamięci dla jednego procesu jest jak na razie nie do zapełnienia dla mnie pożytecznymi danymi, a zawsze można jeszcze zwiększyć rozmiar pliku wymiany.
Warto przeczytać:
Programator Truly Integrated Turtelizer 2 jest kolejną wersją popularnego programatora Turtelizer 2 pochodzącego z ethernut.de. Programaor ten został zaprojektowany by wspólpracować z oprogramowaniem OpenOCD, służącym zarówno do programowania jak i do debugowania.
Wykorzystuje on standardowe złącze 10 pin, identyczne z tym stosowanym pierwotnie w programatorze Turtelizer 2. Programator ten posiada również port szeregowy, ogólnego przeznaczenia z sygnałami napięciowo zgodnymi ze standardem RS232 oraz prędkością do 115200 bps. Konstrukcja tego programatora jest oparta na układzie FT2232 firmy FTDI, dzięki czemu możliwa jest jego współpraca zarówno z systemem Windows jak i Linux.
Umożliwia on programowanie praktycznie wszystkich popularnych mikrokontrolerów, posiadających interfejs JTAG. Prezentowane urządzenie zostało przetestowane na jednym z najpowszechniej stosowanych mikrokonktrolerów AT91SAM7S64.
Więcej Informacji na stronie produktu.
Ponieważ wczoraj oficjalnie uruchomiliśmy stronę informacyjną projektu Aveneo mogę już napisać słów kilka, co razem z zespołem outPUT robiliśmy na Imagine Cup 2008, a teraz rozwijamy to w większym zespole dalej.
Naszym celem jest zbudowanie platformy, która umożliwi efektywne udostępnianie miejsc w prywatnych pojazdach innym użytkownikom. Zintegrowanie platformy z dynamicznym rozkładem jazdy komunikacji publicznej pozwoli zoptymalizować ich codzienne przejazdy. Cel optymalizacji to ograniczenie ilości emitowanych spalin oraz kosztów przejazdów.
Więcej o platformie przeczytacie na ww.aveneo.pl. Zachęcam też do obejrzenia prezentacji prototypu:
Postanowiłem przenieść moją galerię zdjęć do portalu MSu z dwóch powodów – galeria we flashu (generowana przez Photoshopa) była niezbyt przyjazna w nawigacji, a po drugie jej publikacja była mało wygodna (najpierw trzeba było zdjęcia przebrać, później poczekać aż się wygeneruje galeria a na końcu wrzucić ją przez FTP na serwer, dodać link i sprawdzić, czy wszystko działa). Teraz publikacja zdjęć to kilka kliknięć w Galerii fotografii (w wersji Windows Live). Ponadto w spaces mam 5GB na udostępnianie plików (SkyDrive) i kilka innych ciekawych modułów (podoba mi się głównie to, że jest to po prostu działa i jest dość głęboko zintegrowane z systemem operacyjnym). Szkoda tylko, że nie mogę mojego obszaru w pełni dostosować graficznie…
Ostatnio przypomniały mi się moje laboratoria z sieci komputerowych i telefonii IP. Polegały głównie na łączeniu komputerów, konfigurowania routingów, translacji adresów, podsłuchiwanie sieci. Czasem dostaliśmy również jakiś ciekawszy sprzęt do zabawy (w stylu router Cisco), ale teraz muszę przyznać, że to były straszne nudy.
Obecnie zostałem poniekąd "zmuszony" do zapoznania się z symulatorami sieci i ocenienia, które z nich spełnią odpowiednie wymagania. Kilka takowych się znalazło (m.in. opnet, omnet++), ale ich wadami są jak zwykle albo trudnodostępność, albo fakt, że nie są już rozwijane od dłuższego czasu. W momencie, gdy dotarłem do ns2 (w sumie to od niego zacząłem tę przygodę:) ) muszę przyznać, że ktoś odwalił kawał dobrej roboty.
ns2 jest to projekt open-source stworzony przez badaczy dla badaczy. Rdzeń symulatora jest napisany w pełni obiektowo w C++, a skrypty eksperymentów (i nie tylko) można pisać w obiektowej wersji Tcl - OTcl. ns2 umożliwa symulowanie praktycznie każdej warstwy modelu OSI/ISO, począwszy od warstwy fizycznej, poprzez sieciową (wraz z włączeniem różnych protokołów routingu), aż po zachowanie się protokołów warstwy transportowej i aplikacji.
W celu przetestowania własnego protokołu (którejkolwiek z warstw) "wystarczy" go tylko zaimplementować w symulatorze. Ostatecznie nie jest to dosyć trudne, gdyż można wzorować się na już napisanych algorytmów.
Efektem działania symulatora jest plik tekstowy w którym zawarte są wszystkie niezbędne informacje na temat każdego z pakietów jaki w naszej wirtualnej sieci podróżował. Wystarczy teraz zaprząc jakiś parser (np. awk), coś do rysowania wykresów (np. gnuplot) i już możemy się cieszyć naszymi wynikami
Dodatkowo jeżeli chcielibyśmy wizualnie zobaczyć co się w naszej sieci dzieje można skorzystać z programu NAM (Network Animator) towarzyszącego ns2. Który na podstawie odpowiedniego pliku wynikowego z ns2 stworzy ładną animacje ruchu na poszczególnych połączeniach węzłów.
To tyle jeżeli chodzi o ns2. Chciałbym jeszcze wspomnieć o kolejnej wersji symulatora ns3, która jest w trakcie powstawiania. W przeciwieństwie do ns2, ns3 jest w całości napisana w C++ (ns2 korzysta również z OTcl) i jak na razie skrypty eksperymentów to są programy napisane w C++ (aktualnie powstają bindingi do pythona). Ciekawostką jeżeli chodzi o ns3 jest to, że wspiera on format plików pcap, dzięki czemu możemy bezproblemowo odczytać wyniki naszej symulacji albo poprzez tcpdump, albo wireshark <-- czyż to nie jest dużo wygodniejsze niż pliki tekstowe?
Więcej informacji można znaleźć na stronie symulatora:
Truly Integrated Turtelizer 2 Clone is another hardware implementation of popular Turtelizer 2 from ethernut.de. This programmer is designed to work with OpenOCD programming and debugging software.
It uses a standard 10 pin JTAG connector with pinout identical to one used in original Turtelizer 2. It also embeds a simple RS232 voltage compatible serial port with baud rate up to 115200 bps. This programmer is based on FTDI FT2232 chip, and so it is supported by both Windows and Linux operating systems.
This programmer can be used to program almost every kind of microcontroller, thas is capable of programming via JTAG interface. All of our programmers were tested on one of the most popular ARM microcontrollers: the AT91SAM7S64, and worked perfectly.
Our programmer uses flat, ribbon cable to connect to target device and mini USB cable to connect to computer. For more information please visit product site.
Kilka dni temu Microsoft udostępnił pierwszą poprawkę dla VS 2008. Jedną z kilku powodów wydania SP1 od całkiem nie dawno wydanego VS 2008 (około 9 miesięcy temu) jest poprawienie błędów wykrytych wcześniej, ale przede wszystkim polepszenie wydajności całej platformy .NET, co związane jest z zmniejszeniem rozmiaru .NET Framework 3.5. Właśnie dołączony do SP1 .NET Framework Client Profile, który potrafi o 85% zmniejszyć rozmiar kodu pomoże szczególnie użytkownikom systemu XP, ponieważ pliki wynikowe jak i biblioteki są zbyt “ciężkie” jak na system XP, z czym lepiej radzi sobie Vista. Dodatkowo w SP1 dla VS 2008 dodano obsługę SQL Servera 2008, który również całkiem niedawno ujrzał światło dzienne w bezpłatnej wersji SQL Server 2008 Express Edition. SP1 dostarcza również wiele innych poprawek, takich jak ulepszone narzędzia do WPF, dodano nowe komponenty i narzędzia dla Visual Basic i Visual C++, również zwiększono funkcjonalność narzędzi dla technologii AJAX oraz ulepszenia w zakresie wdrażania rozwiązań webowych, oraz ulepszono narzędzia ADO.NET Entity Designer. W trakcie instalacji SP1 dla VS 2008 na samym początku ukazało się okno z spisem poprawek, które dołączam poniżej.

Service Pack 1 dla Visual Studio 2008 można pobrać na stronie Microsoftu.
Kilka dni temu miała miejsce premiera SP1 dla Visual Studio 9.0. W między czasie zespół odpowiedzialny za Visual Studio rozpoczął prace nad projektowaniem funkcjonalności, które mogą znaleźć się w kolejnej edycji VS. Ciekawą funkcją może być DMM czyli Document Map Margin. Pomysł polega na zamianie paska przewijania wewnątrz Visual Studio na pasek z miniaturką edytowanego pliku wraz z podświetleniem wszystkich markerów (brakepointy, zakomentowane fragmenty kodu itp.). Miałoby to wyglądać mniej więcej tak (wersja z samymi markerami oraz miniaturką):

W tej chwili używam zamiast paska przewijania podglądu dokumentu o nazwie RockScroll (stworzonego przez jednego z developerów wewnątrz MSu), jednak nie pokazuje on wszystkich markerów w tak czytelny sposób (chociaż najważniejsze – brakepointy – są pokazywane w dość czytelny sposób). RockScroll w akcji:

Sznurki:

\t\e\s\t
\\t\\e\\s\\t
php_value magic_quotes_sybase On
by noreply@blogger.com (WooKasZ) at August 09, 2008 10:02 AM
by noreply@blogger.com (WooKasZ) at August 08, 2008 08:33 PM
Krótko i na temat - jest RTM. Jutro podobno będzie można pobrać testową wersję...

by noreply@blogger.com (WooKasZ) at August 03, 2008 04:48 PM

by noreply@blogger.com (WooKasZ) at August 03, 2008 02:47 PM
RecordStore store = RecordStore.openRecordStore("test", true);
// zrzuci wyjątek jeśli zbiór nie istnieje
RecordStore secondStore = RecordStore.openRecordStore("test2", false);RecordStore bd = RecordStore.openRecordStore("test", true);
ByteArrayOutputStream arrayStream = new ByteArrayOutputStream();
// do zapisu danych różnych typów
DataOutputStream out = new DataOutputStream(arrayStream);
// wpisujemy do strumienia tekst
out.writeUTF("testujemy zapis!");
// pobieramy tablice bajtów
byte[] data = arrayStream.toByteArray();
// zapisujemy do rekordu
bd.addRecord(data, 0, data.length);
// zamykamy strumień i zbiór
out.close();
bd.closeRecordStore();RecordStore bd = RecordStore.openRecordStore("test", false);
RecordEnumeration recEnum = bd.enumerateRecords(null, null, false);
while (recEnum.hasNextElement()) {
byte[] data = recEnum.nextRecord();
// jakieś działania
}
bd.closeRecordStore();DataInputStream in = new DataInputStream(
new ByteArrayInputStream(recEnum.nextRecord()));
String text = in.readUTF();
by noreply@blogger.com (WooKasZ) at August 02, 2008 10:10 PM
Mojave miało być eksperymentem polegającym, na zebraniu użytkowników innych systemów niż Vista (starsze wersje Windows, Linux, MacOS) i zapytaniu ich, co tak naprawdę drażni ich w Viście. Następnie miała zostać pokazana ich reakcja po oglądnięciu "następnego Windowsa", a na koniec mieli się dowiedzieć, że to jednak Vista. Idea ciekawa, ale…
Po zapowiedziach jak eksperyment wyglądał spodziewałem się czegoś więcej, czegoś zupełnie innego. To co dziś zobaczyłem na http://www.mojaveexperiment.com/ to czysty, marketingowy bełkot.
Microsoft ma rozpocząć kampanię reklamową Visty jesienią tego roku. Jeżeli to ma być jej przedsmak, to lepiej niech nie brną w tego typu pomysły. Takie zwierzenia w stylu Big Brothera nie przekonują do zakupu tego systemu, a patrząc na tych ludzi mam poczucie, jakbym patrzył na kiepskich aktorów.
Wiele razy już w przeciągu ostatnich 2-3 lat szukałem jakiejś porządnej biblioteki implementującej podstawowe algorytmy z algebry liniowej i ogólnie z matematyki. Wbrew pozorom znalezienie tychże dla platformy .NET nie jest takie trywialne..
Po odpytaniu google o jakikolwiek silnik matematyczny natrafiamy na cenioną open sourcową bibliotekę GSL. Z mojego punktu widzenia ma ona jedną wadę: jest mocno nastawianona na środowisko Linuksowe. O ile istnieją wersje przeportowane na system Win32 (nie mówię tutaj o Cygwinie) to nie były już aktualizowane kilka lat. A o automagicznym podpięciu się z poziomu C# można praktyczznie pomarzyć..
Następna kolekcja matematyczna jak wpadła mi w ręce to dnAnalytics. Muszę przyznać, że jest ona bardzo dobrze przygotowana zapewniając bardzo wygodny i intyuicyjny intefejs programistyczny. Z podstawowych możliwości udostępnianych mogę wymienić własną implementację struktury do obsługi macierzy i wektorów, możliwość wczytywania i zapisywania danych z/do plików CSV, chyba wszystkie najważniejsze operacje na macierzach oraz szereg algorytmów do rozwiązywania równań, dekompozycji macierzy (SVD, LU, QR) i co najważniejsze ma zaimplementowane wsparcie dla natywnej biblioteki Intel Math Kernel Library, dzięki czemu znacząco zyskujemy na wydajności. Niestety dnAnalytics miał jedną wadę: nie w pełni wykorzystywał możliwości MKL.
W ten sposób dotarłem (całkiem przypadkowo) od ILNumerics.Net. Porównując z dnAnalytics to ma raczej trochę inny interfejs (ani nie lepszy, ani nie gorszy, po prostu inny) przypominający bardziej język skryptowy z Scilaba czy Matlaba (między innymi odwoływanie się do pól macierzy). A skoro jestem przy macierzach to warto wspomnieć, że w tym przypadku nie jesteśmy ograniczeni tylko do dwóch wymiarów i typu double, ale dzięki typom generycznym możemy wykorzystać niemal dowolny typ numeryczny w wielomiarowej przestrzeni. Malutkim minusem jest brak obsługi plików CSV do których przyzwyczaiła mnie dnAnalytics, ale coś za coś. Na zakończenie jeszcze jeden ogromny plus: w pełni wykorzystuje zestaw funkcji LINPACK z natywnej biblioteki MKL, a także dodatkowo z konkurencyjnej biblioteki firmy AMD. Dla zachowania kompatybilności z platformą mono powstała również specjalna wersja natywnego silnika matematycznego.
Podsumowując dnAnalytics jest bardzo przejrzystą biblioteką nadającą się do projektów w których nie wymaga się dużej wydajności i ograniczamy się do dwóch wymiarów. ILNumerics.Net jest natomiast prawdziwą perełką wśród otwartych bibliotek matematycznych, a dzięki porządnemu połączeniu z MKL i pochodnymi jest naprawdę wydajnym tworem.
Dzisiaj Maciej wsiadając do mnie do samochodu na ciemnej ulicy usiadł na mojej torbie z komputerem. Maciej waży ponad 80kg, więc można wywnioskować że specjalna ramka za matrycą chyba spełnia swoją rolę. Torba nie jest zrobiona ze sztywnych pianek, a z miękkich tworzyw sztucznych. Thinkpadowi całe szczęści nic nie jest.

$i = 1;(warunek prosty dla przykładu)
if ( $i == 0 ) {
echo 'Goodnight, world!!';
} elseif ( $i == 1 ) {
echo 'Hello, world!';
} elseif ( $i > 4 ) {
echo 'Dont cry for me.... ARGENTINA !!';
} else {
echo 'die die die!';
}
Od razu ładniej:) Zachowanie mamy praktycznie takie same. Kodu może troszkę więcej powstaje ale co tam! Ważne, że ładnie :)
$i = 1;
switch ( true ) {
case ( $i == 0 ):
echo 'Goodnight, world!!';
break;
case ( $i == 1 ):
echo 'Hello, world!';
break;
case ( $i > 4 ) :
echo 'Dont cry for me.... ARGENTINA !!';
break;
default:
echo 'die die die!';
break;
}
Z cyklu "rozwiązanie dla wszystkich" – naprawimy dzisiaj w openSUSE (możliwe, że w innych dystrybucjach i innych wersjach SUSE również) możliwość dołączenia do domeny Windows i wykorzystania autoryzacji przy pomocy takiej domeny.
Problem wydaje się trywialny – teoretycznie podczas instalacji samego systemu wybieramy metodę autoryzacji prze Domenę Windows, a następnie po dołączeniu do niej możemy już logować się na konta z domeny. Teoretycznie. W praktyce niestety nie dość, że konta zdalne nie są widziane razem z lokalnymi (getent passwd), to jeszcze nie można nawet sprawdzić jakie są dostępne (wbinfo –u). Gdzie leży problem? Programiści z firmy Novell chyba nie przetestowali konfiguracji, którą generuje narzędzie Yast.
Szczerze powiem, że spędziłem nad tym kilka dni i do tematu wracałem jak bumerang – nie dawało mi to spokoju, a rozwiązanie to jest o niebo wygodniejsze niż używanie LDAP'a z ręcznym mapowaniem atrybutów i Kerberosa (którego nota bene i tak używam, ale z winbindem).
Problematyczny okazał się plik smb.conf, w którym Yast "zapomniał" dodać kilku linii:
password server = adres.gdzies.pl
winbind enum groups = yes
winbind enum users = yes
winbind use default domain = yes
W pierwszej linii musimy podać adres kontrolera domeny, który będzie "podawał" nam hasła. Ostatnia linia nie jest konieczna, ale pozwoli pominąć podawanie za każdym razem nazwy domeny.
I tak Active Directory + Linux działa chyba w najlepszej możliwej konfiguracji.
Odpowiedź prosta – bo stare się sypią. Spędziłem prawie dwa dni na analizie, dlaczego nie mogę zrobić na jednym z węzłów ograniczenia w autoryzacji w PAM przez LDAP na podstawie przynależności do grupy. Służy do tego prosty parametr pam_groupdn, który umieszcza się w pliku konfiguracyjnym ldap.conf. Do tego określa się nazwę atrybutu, który identyfikuje przynależność do grupy no i odpowiednią autoryzację skonfigurowaną w PAM (/etc/pam.d/). Wszystko fajnie, ale w żadną stronę to nie chciało działać (debugowałem to dwa ostatnie dni - PAM po prostu olewał groupdn lub go nie przechodził). Postanowiłem skopiować konfigurację na inną maszynę z nowszym system i… ruszyło od pierwszego razu. Wniosek prosty – regularnie uaktualniać systemy. Winowajca: openSuse 10.0.
PS Teraz jestem w trakcie eksperymentowania połączenia AD LDS z klasycznym klientem LDAPowym. Co z tego wyjdzie opiszę niebawem.
Update: chwilowo jestem zmuszony skończyć z tymi eksperymentami. Problem jaki staje na drodze (największy) to różne nazwy atrybutów pomiędzy klasycznym serwerem LDAP a AD LDS. Wracam do klasycznego LDAPa, a w chwili wolnej może ponownie spróbuję gromadząc wcześniej sensowny zbiór literatury (przykłady z Technetu są bardzo prymitywne, a inne materiały w sieci dość lakoniczne).
Za długą przerwę przepraszam niestety egzaminy końcowe oddawanie projektów itd. czyli ogólnie mówiąc sesja, szósta z kolei, która na szczęście się już skończyła i to w zeszłym tygodniu. Jak na razie pozytywnie
oczekuję jeszcze na ostatnie wyniki, które niestety się przeciągają. W okresie wakacji nie pozostawię strony bez nowych wpisów, wręcz przeciwnie planuję poznać kilka nowych technologii, które przedstawię na mojej stronie. Ale jak na razie należy mi się mały odpoczynek…
innym również życzę miłych i dłuuugich wakacji.

![]() |
| Elvis Costello - koncert - Malta 28.06.08 |

Dzisiaj chciałem zmigrować część wirtualnych maszyn z rozwiązań firmy VMWare na serwer maszyn wirtualnych od Microsoftu. Niestety skończy się najprawdopodobniej na migracji na nowszą platformę serwerową od VMWare. Powód? Virtual Server 2005 R2 SP1 wciąż nie obsługuje 64-bitowych systemów klienckich! Nie wiem, jak można tak przeoczyć jedną z podstawowych funkcjonalności (większość moich obecnych "wirtualek" pracuje właśnie w 64-bitach), zwłaszcza w wersji serwerowej. Jest alternatywa w formie Hyper-V (nota bene pojawiła się finalna wersja tej technologii w ostatnich dniach), ale wymaga Windows Server 2008, którego licencje do najtańszych nie należą (a system, który hostuje moje maszyny wirtualne to Vista – nie potrzebuję wyśrubowanej wydajności akurat na tym serwerze).
