TechLife devBlog

Czerwiec 2010

Geany 0.19

Linux, Software 23 czerwca 2010 22:15

Kronikarskim obowiązkiem odnotowuję pojawienie się nowej wersji jednego z najlepszych Linuksowych edytorów -- Geany. Co przynosi nowa wersja?

  • Mechanizm kompilacji został przebudowany, aby być jeszcze bardziej konfigurowalnym (Lex Trotman).
  • Użycie wyrażeń regularnych zgodnych z POSIX system/GNU przy wyszukiwaniu oraz zastępowaniu. Zmiany w składni - teraz wspierany jest operator '?' oraz znacznik nowej linii.
  • Wsparcie dla definiowania własnych typów plików.
  • Dodanie konfiguracji oraz wsparcia dla wirtualnych spacji.
  • Nowe typy plików: Txt2Tags, Abc, Verilog, Genie.
  • Dodanie nowego znacznika dla snippetów -- { command:... }. Powoduje to wstawienie do dokumentu wyniku działania podanej komendy.
  • Zezwolenie na + oraz -' jako wartości pola Przejdź do wiersza. Umożliwia do przeskok o podaną ilość linii względem aktualnej pozycji.
  • Dodanie menu "Pokaż->Edytor->Schematy kolorów" (tylko jeżeli dostępne są pliki ze schematami kolorów)
  • Dodanie dopełniania podpowiedzi słów kluczowych za pomocą klawisza Tab (działa podobnie jak dopełnianie nazw plików w terminalu za pomocą Tab-a)
  • Poprawki do parsowania symboli dla języków D, Java, PHP, Perl, Python, R, VHDL.
  • Dodanie znaczników specjalnych dla snippetów -- {ob}, {cb} i {pc} -- reprezentujących odpowiednio znaki: {, } i %
  • Dodanie zmiennych {project} i {description} do snippetów
  • Nowy język tłumaczenia: ast
  • Aktualizacja tłumaczeń: de, enGB, es, fr, gl, ja, nl, pt, ru, sl, sv, tr, vi, zhCN.

Wartą odnotowania rzeczą jest pojawienie się odwołań do komend systemowych z poziomu snippetów. Jak to działa? Na przykład tworzymy taki oto snippet w sekcji [Default]:

fortunka={command:fortune}

Po zapisaniu przeładowujemy konfigurację (Narzędzia->Reload Configuration) i od tej pory w dowolnym miejscu dowolnego pliku wpisując fortune i wciskając Tab otrzymujemy losową fortunkę (oczywiście o ile mamy zainstalowany pakiet fortune-mod). Rzecz jasna komendy należy wykorzystać w jakiś bardziej przemyślany sposób niż fortunki ;-)

Rzecz o przyszłości internetu

Inne, Internet, Techblog 19 czerwca 2010 00:29

Tekst ten spisuje w dużej mierze z własnej ciekawości, aby czytając go za kilka lat móc sprawdzić jak na ile trafnie udało mi się przewidzieć przyszłość.

Creative Commons (by-nc-nd) - JaulaDeArdilla Będąc w podstawówce czasami mogłem całe dnie przesiedzieć na klepaniu przeróżnych programów w BASIC-u na moim postkomunijnym Commodore 64 (pozdrowienia dla fanów C&A). Kiedy jednak nastała era PC a ja zacząłem szperać po internecie czy to u kumpli czy w kawiarenkach, wówczas zauważyłem, że mój nie podłączony do internetu komputer stawał się coraz mniej użyteczny. Oczywiście nadal można było zrobić na nim 1k przeróżnych rzeczy jednak był jakiś taki... pusty. Wtedy zdałem sobie sprawę, że internet to przyszłość, bez której nie będzie można niedługo żyć. Brak internetu będzie równie odczuwalny jak brak prądu.

Kiedy poszedłem do technikum, do klasy informatycznej, postanowiłem wybrać sobie jakiś język programowania, w którym zacznę się szkolić, tak aby na studiach a później w pracy zawodowej mieć już go w małym palcu. W tamtych czasach w królestwie programowania prym wiodły takie języki jak C, C++ czy Delphi, w których to można było naklepać jakiś programy użytkowe, które wówczas były w cenie. Ja jednak nie widząc innej przyszłości poza internetem postawiłem na naukę tworzenia dynamicznych stron internetowych i związanych z nimi języków skryptowych od PHP poczynając.

Na studiach zauważyłem, że moja wizja przyszłości szybko się wypełnia. Coraz więcej polskich firm zaczęło dostrzegać potencjał internetu. Każda firma chciała mieć własną stronę internetową, które stopniowo z prostych HTML-owych wizytówek zaczęły przekształcać się z coraz bardziej zaawansowane systemy zarządzania treścią, ewidencji sprzedaży czy wspomagania zarządzaniem. Te coraz bardziej funkcjonalne systemy szybko zaczęły przyjmować funkcje aplikacji desktopowych stopniowo je zastępując (stan na dzień dzisiejszy).

Creative Commons (by-nc-nd) - taberandrew Do zalet aplikacji internetowych nie muszę chyba nikogo przekonywać. Świadczy o tym chociażby fakt, że za ich pomocą ja piszę ten tekst a Wy go czytacie (i za chwilę skomentujecie). Poza tym większość z Was zapewne używa np. internetowego klienta poczty, który automagicznie się aktualizuje, naprawia, zyskuje nowe funkcje czy backupuje. Jest to ogromna przewaga nad aplikacjami desktopowymi, które mogą przestać działać na 100 sposobów (wirusy, utrata danych, awaria jednego z wymaganych komponentów systemowych), natomiast póki działa Wam przeglądarka (a do tego nie trzeba wiele) do puty będą działały aplikacje internetowe (mówię oczywiście cały czas o przeglądarkowych aplikacjach).

Ok, więc mamy stan na dzień dzisiejszy, ale co dalej? Otóż moim zdaniem następnym krokiem będzie zmniejszenie roli komputerów osobistych na rzecz internetowych chmur czyli olbrzymich farm serwerów. Dowody takiego trendu możemy znaleźć już teraz. Wystarczy sprawdzić jaki komputer szybciej przeszuka zasoby internetu - nowe 8-rdzeniowe cacko czy stary pentium 500MHz? Oczywiście zrobią to w tym samym czasie bo zamiast robić to same zapytają o to serwerownie Googla. A który z nich znajdzie szybciej mail od kumpla sprzed 3 miesięcy? Oczywiście żaden, bo zajmą się tym serwery Googla na których operuje Gmail. Przykładów jest oczywiście znacznie więcej, można przecież zapytać który poradzi sobie lepiej z konwersją wideo wrzucanego na YouTube. Oczywiście jest to kolejne niewłaściwie zadane pytanie bo żaden z nich nie zajmuje się już konwersją, robią to internetowe serwery. A kto zaczyna wykrywać nam teraz wirusy znajdujące się na dopiero co podłączonej pamięci USB? Nie, nie nasz antywirus ale zewnętrze oprogramowanie antywirusowe przebywające w chmurach, do których lekki klient, działający w naszym systemie, wysyła próbki do analizy.

Przyszłość jest w chmurach Widzimy więc, że kolejnym naturalnym krokiem na tej ścieżce jest odchudzenie komputerów osobistych do roli wyłącznie klientów internetowych chmur (patrz Chrome OS). Oczywiście nadal pozostają programy, których nie da się póki co wyprzeć z desktopów. Bo jak zastąpić programy typu Photoshop, CAD, programy do obróbki wideo czy zaawansowane graficznie gry przez aplikacje przeglądarkowe. To rzecz jasna nie stanie się w najbliższych latach, chociażby dlatego, że nie istnieje jeszcze odpowiednia technologia, w której te aplikacje mogły by powstać. IMO HTML5 dopiero będzie w stanie zapewnić dobry budulec dla aplikacji internetowych typu pakiety biurowe, a do reszty jeszcze daleko. Co prawda rzeczami typu Flash czy WebGL będzie się dało zapchać wiele dziur jednak gra napisana w WebGL choć do działania będzie wymagała wyłącznie przeglądarki to jednak całość operacji graficznych nadal pozostanie do wykonania po stronie klienta.

Creative Commons (by-nc-nd) - stadtstreicher79 Na końcu dochodzimy więc do punktu, w którym wszelkie operacje wymagające większej mocy obliczeniowej przerzuconą zostaną do chmur. Widzę to na podobnej zasadzie jak odbywają się sesje VNC. Nasz komputer będzie logował się do najbliższego nam centrum cyfrowego i stamtąd otrzyma gotowy do wyświetlenia na monitorze obraz. Zalet takiego systemu jest wiele. Po pierwsze znika problem skalowalności. Obecnie rynek gier komputerowych jest w znacznym stopniu motorem napędowym do zmiany podzespołów komputerowych na nowsze. Jednak w przypadku centrów cyfrowych problem ten nie istnieje. Jeżeli tylko będziemy chcieli pograć w najnowszą grę to po prostu w nią pogramy ponieważ system będzie miał do dyspozycji olbrzymie zasoby obliczeniowe, które będzie przydzielał użytkownikom w zależności od ich zapotrzebowania. Chociaż centra cyfrowe wydają się trochę nierealnym pomysłem to jednak nie odbiegają one za bardzo od dzisiejszych sieci energetycznych. Każdy z nas będzie podłączony do najbliższego centrum cyfrowego podobnie jak obecnie podłączony jest do najbliższej elektrowni i każdy będzie otrzymywał tyle mocy obliczeniowej ile aktualnie potrzebuje (podobnie jak z energią elektryczną). Z tej perspektywy sprawa wygląda już całkiem normalnie. Kolejna ogromna zaleta jest taka, że podobnie jak teraz wykwalifikowani pracownicy obsługują elektrownie, również specjaliści od sprzętu będą obsługiwali centra obliczeniowe. To zupełnie tak jak by każdy z nas miał w domu własnego informatyka. Skończą się zawirusowane systemy działające na ćwierć gwizdka, z którymi zwykły użytkownik nie daje sobie rady. Poza tym aktualizacja takiego centrum cyfrowego będzie wiązała się z wymianą macierzy dyskowej klasy 1 na macierz klasy 2, czy wymianą jednostki głównej posiadającej 4k procesorów klasy 1 na jednostkę z 100k procesorów klasy 2 i po bólu. Wreszcie komputerami zajmą się specjaliści a użytkownikom pozostanie... użytkowanie :-)

Co do zestawów komputerowych do szacuję, że będą one składały się wyłącznie z monitora, myszki i klawiatury (o ile ktoś nie wymyśli czegoś bardziej poręcznego) oraz urządzeń peryferyjnych typu kamera czy drukarka. Będą one spięte ze sobą siecią bezprzewodową. Wszystko inne znajdowało będzie się w chmurach. Ktoś spyta a co np. ze zgrywaniem zdjęć z aparatu skoro nie będziemy mieli obudowy komputera do której można będzie wsadzić kabel USB czy kartę pamięci. Otóż sprawa jest prosta, wszelkie urządzenia peryferyjne będą również klientami sieci internet i będą przesyłały dane prosto do chmur, a więc żadna obudowa z portami nie będzie nam potrzebna.

Na tym już zakończę moje przemyślenia co by niepotrzebnie nie wydłużać tekstu. To jak, kto się założy, że tak będzie? :-)