<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="bg">
  <title>Блог.Katsarov.org</title>
  <id>tag:katsarov.org,2009:58</id>
  <updated>2009-11-26T18:08:47.000+00:00</updated>
  <link type="text/html" rel="self" href="http://katsarov.org/blog/feed"/>
  <author>
    <name>Anton Katsarov</name>
  </author>
  <entry>
    <title>Catalyst на споделен хостинг част 2</title>
    <id>tag:katsatov.org,2009:58</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">    <p>
      За огромна моя радост вече на българския пазар има компания (<a href="http://www.space.bg/" rel="external">space.bg</a>) предлагаща хостинг за Perl FastCGI приложения, което позволява нормална работа на Catalyst приложения върху споделен хостинг.
    </p>

    <p>
      Инсталацията на приложението става лесно в няколко стъпки. Радващ е и факта, че в услугата е включен и SSH достъп, което допълнително улеснява работата. Първото, което трябва да направите след като влезете чрез SSH  е да стартирате от терминал Perl обвивка и да минете през конфигурацията:
    </p>

    <pre>
 perl -MCPAN -e shell</pre>

    <p>
      След това трябва да излезете без да инсталирате нищо. Следващото което трябва да направите е да отворите вашия <code> ~/.bashrc </code> файл и да добавите следните редове:
    </p>

    <pre>
export PATH=$HOME/local/bin:$HOME/local/script:$PATH
perlversion=`perl -v | grep 'built for' | awk '{print $4}' | sed -e 's/v//;'`
export PERL5LIB=$HOME/local/share/perl/$perlversion:$HOME/local/lib/perl/$perlversion:$HOME/local/lib:$PERL5LIB</pre>


    <p>
      След това излезте и влезте наново (или изпълнете ръчно вашия bashrc файл: "<code> . .bashrc </code>"). След това редактирайте файла <code>.cpan/CPAN/MyConfig.pm</code> и добавете следните редове:
    </p>

    <pre>
'make_install_arg' =&gt; qq[SITEPREFIX=$ENV{HOME}/local],
'makepl_arg' =&gt; qq[INSTALLDIRS=site install_base=$ENV{HOME}/local],</pre>

    <p>
      Вече можете да инсталирате всички необходими модули по стандартния начин:
    </p>
    <pre>
# perl -MCPAN -e shell
cpan&gt; install Catalyst</pre>

    <p>
      Възможно е да се наложи да инсталирате някои от модулите или техни зависимости с команда <code>force install</code> . За улеснение можете да използвате набор от пакети (<a href="http://www.katsarov.org/static/files/local.tgz">local.tgz</a>), който аз използвам за моите приложения. Просто трябва да се разархивира в домашната папка на хостинг абонамента. Имайте предвид, че е възможно част от пакетите в него да с ас по-стара версия от необходимата ви.
    </p>
    <p>
      Някои Perl модули изискват зареждане на динамични библиотеки. Поради системите за сигурност на хостинг сървъра те няма да бъдат заредени ако съдържащите им директории не са с точно определени права за достъп. За да откриете всички директории, които имат нужда от смяна на правата можете да използвате следната команда:
    </p>
    <pre>
find ~/local -type d -perm +022 -ls</pre>

    <p>За да коригирате правата на всички наведнъж може да използвате седната команда:</p>
    <pre>
find ~/local -type d -perm +022 -print0 | xargs -0 chmod g-w,o-w</pre>
    <p>
      След това трябва да преименувате fastcgi скрипрта в папката <code>script</code> да бъде с разширение <code>.fcgi</code>, а не <code>.pl</code> и да добавите пътищата до локално инсталираните модули:
    </p>
    <pre>
use FindBin;
use lib "$FindBin::Bin/../lib";
use lib "/home/h2/u/us/user/local/share/perl/5.8.8";
use lib "/home/h2/u/us/user/local/lib/perl/5.8.8";
use lib "/home/h2/u/us/user/local/lib";
use lib "/home/h2/u/us/user/local/share/perl/5.8.8";
use lib "/home/h2/u/us/user/local/lib/perl/5.8.8";
use lib "/home/h2/u/us/user/local/lib";</pre>
    <p>Естествено пътищата трябва да съвпадат с тези на вашата домашна папка.</p>
    <p>След това добавете следните редове в <code>.htaccess</code> файл в кореновата директория на хоста ви и отворете браузъра си и вижте новия си сайт</p>
    <pre>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/?script/myapp_fastcgi.fcgi
RewriteRule ^(.*)$ script/myapp_fastcgi.fcgi/$1 [PT,L]</pre>
    <p>
      Имайте предвид, че ако правите промени по Perl кода на приложението, ще е необходимо да го рестартират за да се отраят. Това става като просто „убиете“ текущите му процеси:
    </p>
    <pre>
user@nuln:~$ ps ax | grep fcgi
2903 ?        SN     0:03 /usr/bin/perl -w myapp_fastcgi.fcgi
27235 ?       SN     0:04 /usr/bin/perl -w myapp_fastcgi.fcgi
user@nuln:~$ kill -9 2903 27235</pre>
</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/web/catalyst_on_shared_hosting_2"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2009-11-26T18:08:47.000+00:00</updated>
  </entry>
  <entry>
    <title>За онлайн услугите</title>
    <id>tag:katsatov.org,2009:57</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>Още в самото начало, през 70-те години на 20-ти век, когато съвременният компютър „набира скорост“, софтуерът е бил свободен. Производителите на компютри просто ги продавали със софтуера на тях и всеки, който имал малко познания по програмиране можел да дописва и модифицира програмите, така че да са удобни за неговите собствени нужди. Освен това производителите не се интересували от това дали софтуера се копира и разпространява.</p>

<p>В началото на 80-те възниква идеята за лицензирането на софтуера и създаването на правила за използването му. Счита се, че това става с отвореното писмо на Бил Гейтс към така наречената група на хоби потребителите на компютри ( По онова време компютрите са били предимно в университетите и големите компании. Само ентусиасти проявяващи интерес към новата технология имали компютри в дома си и това било тяхно хоби. ) заявява, че е нередно свободното разпространение на софтуера и трябва да се наложат правила за ограничаването му. За жалост успява да убеди повечето компании и така се появява собственическия софтуер. Съответно се появява нуждата от лицензи, които да правят обратното. Да дават свобода на потребителите и да я защитават. Решението идва благодарение на Ричард Столман. Появяват се <a href="http://www.gnu.org/licenses/gpl.html" rel="external">GNU GPL</a> лиценза. Той се осланя на четите свободи:</p>

<ul>
  <li>Свободата да изпълняваш програмата — за всякакви цели (свобода №0).</li>
  <li>Свободата да изучаваш как работи програмата и да я изменяш, за да отговаря на нуждите ти (свобода №1). Достъпът до изходния код е необходимо условие за това.</li>
  <li>Свободата да разпространяваш копия, за да помогнеш на ближния си (свобода №2).</li>
  <li>Свободата да подобряваш програмата и да споделиш подобренията си с всички, за да може цялата общност да се възползва (свобода №3). Достъпът до изходния код е необходимо условие за това.</li>
</ul>

<p>В началото на 90-те вече има и свободна операционна система - GNU/Linux. Вече потребителите имат свободата да използват свободен софтуер на компютрите си.</p>

<p>Само няколко години след това голяма популярност набира глобалната мрежа Интернет. Тя дава нови хоризонти пред потребителите. Дава възможност за връзка с други потребители по целия свят. Пример за това е електронната поща. Но за да се осъществява преноса на данни са необходими протоколи. По онова време протоколите са били известни (в смисъла на добре формулирани) и всички са спазвали RFC-тата. Това давало свободата да се използват различни клиенти или сървър, между които и такива, които са свободен софтуер. Потребителят имал право да бъде свободен. След това някои компании (Microsoft например) разработват собствени протоколи за собствените си услуги, които целели да привлекат потребителя с прекрасната функционалност която предлагали тези услуги. Или е по-правилно да се каже да го „оковат“? Така или иначе чрез изследване на тези програми и протоколи (така наречения reverse engineering) се раждат техни свободни алтернативи. Добър пример за това е Samba. Всъщност Smaba дори става доста по-добър софтуер от собственическата имплементация на протокола.</p>

<p>И така. Що се отнася до използването на личния си компютър вече имам свободата да използваме изцяло свободна операционна система като gNewSense например. Можем свободно да комуникираме и с други потребители през Интернет. Но днес, в началото на 21-ви век наблюдаваме един нов „феномен“. Познат е под различни имена: уеб приложения, уеб услуги, WEB 2.0 и т.н. В общи линии става дума за това, че се предлагат услуги, коти дават възможност да ги използвате без да ги инсталирате на собствените си компютри. Можете да ги използвате през браузърите си са само на един клик разстояние ( евентуално и на една регистрация :-) ). Но тук идва въпросът: Къде на практика се извършва изчисляването (анг. computing. Все пак когато говорим за работа с компютър нека не забравяме, че всичко се свежда до изчисления. Затова ще наричаме използването на компютъра изчисляване.)? На практика, когато се използва такъв тип онлайн услуга изчисляването не става вече на нашия компютър, а на сървъра. Отличен пример за това е Gmail. Предлагат ви страхотна услуга, можете отвсякъде и по всяко време да си проверявате пощата, да се свързвате с приятели в мрежата на google. Дори не се налага да мислите за клиент и сървър вече, защото тук те са едно. Наблюдава се и друго нещо, ту вече липсват и протоколите. Данните ви се „прехвърлят“ в затвореното общество на услугата и вие на практика не знаете как става това. Но какво се случва с данните ви? Те вече не са на вашите компютри. Вие вече нямате достъп до тях. Ако някой ден решите да запазите електронния си адрес, но искате да смените доставчика на пощенски сървър (пощенска услуга) не можете да го направите с Gmail. И не само това. Googole се възползват от вашите данни за да ви предоставят реклами свързани с вашите интереси. А дали е само това? Не знам. И вие не знаете, което е още по-лошо. Ами ако предоставят данните ви на трети страни? Няма как да знаем това. Причината е, че повечето от тези услуги използват собственически софтуер. И още по-лошото, че именно те са най-популярни: Google, Tweeter, FaceBook, MySpace, YouTube, Blogger. Да вземем Gmail например. Предлагат страхотна услуга за електронна поща. Но какво правите ако някой ден решите да не ползвате вече техните услуги? Как ще запазите данните си? А имате ли право да го направите? И това не е най-лошото. Това са част от общите условя за позлване на google:</p>

<p><cite>„Google събира лични данни, когато се регистрирате за услуга на Google или когато доброволно ги предоставите. Можем да комбинираме получените от вас лични данни с информация от други услуги на Google или от трети страни, за да ви осигурим по-добра практическа работа, както и персонализирано съдържание.“</cite></p>

<p><cite>„Може да споделяме обобщена информация, която не ви идентифицира лично, с трети страни извън Google.“</cite></p>

<p>За щастие има доста свободен софтуер, който можете да използвате в Интернет. Но това не решава проблема. Ами ако този софтуер е модифициран и се опитва да ви навреди по някакъв начин или прави нещо, за което не знаете или поне официално не е обявено, че прави? Няма как да разберете. Няма как да го видите за уеб интерфейса, зад уеб страницата на вашите браузъри. Тук идва мястото на <a href="http://www.gnu.org/licenses/agpl.html" rel="external">GNU Affero GPL</a> лиценза, който освен, че защитава четирите свободи, задължава собственикът на сървърното приложение (онлайн услугата) или уеб сайта да предостави точно копие на текущо използваната версия на софтуера, който го/я задвижва. По този начин вие можете да разбере какво прави този софтуер с вашите данни. И дори да има модификации в кода вие можете да ги наблюдавате. Дори можете да ги използвате на вашия собствен сървър или услуга.</p>

<p>Това е страхотно! Но може би ще се изненадате ако ви кажа, че проблемът все още не е решен. Знаете какъв софтуер използвате, знаете дори как работи, знаете, че не ви застрашава. Проблемът са данните остава. Ами ако искате да прехвърлите данните си към друга услуга? За да стане това трябва да има начин по-който вие можете да изтеглите данните си и да ги прехвърлите към друга желана от вас услуга било тя онлайн или локално приложение на вашите компютри. Трябва доставчикът на услугата да ви предостави достъп до вашите собствени данни.</p>

<p>Така че дотук можем да говорим за свободен софтуер, както и за свободни данни, но все още не може да дефинираме термин като свободна услуга. Но това не означава, че не можем да говорим за свобода в онлайн пространството. Всички може да допринесем за това:</p>

<p>Ако сте разработчици на софтуер за онлайн услуги:</p>

<ul>
  <li>Публикувайте кода си под <a href="http://www.gnu.org/licenses/agpl.html" rel="external">GNU Affero GPL</a>, за да могат потребителите да изследват изходния код на приложението, което използват или дори да го използват за техни собствени услуги.</li>
  <li>Можете да разработите алтернатива на съществуваща собственическа услуга, която да публикувате под свободен лиценз.</li>
  <li>Можете да разработите софтуер, който да децентрализира услугата като даде възможност на потребителите да върнат контрола върху приложението на техните собствени компютри.</li>
</ul>

<p>Ако предлагате онлайн услуги:</p>

<ul>
  <li>Избирайте свободен софтуер за услугите си. Препоръчително е да е под <a href="http://www.gnu.org/licenses/agpl.html" rel="external">GNU Affero GPL</a> лиценз.</li>
  <li>Дайте достъп на потребителите до техните собствени данни и то в свободни (отворени) формати, за да могат потребителите да разполагат напълно с данните си. Това би позволило потребителя да извади данните си от услугата, когато пожелае.</li>
  <li>Дайте възможност на потребителите да разполага с данните си не само физически. Данните достъпни от всички потребители на услугите ви трябва да са публикувани под условия, които позволяват на потребителите да разполагат напълно с тях.</li>
</ul>

<p>Ако сте просто потребители:</p>

<ul>
  <li>Първо се замислете дали да използвате въобще софтуер върху компютъра на някой друг. Все пак той винаги ще има достъп до данните ви.</li>
  <li>И ако все пак решите търсете услуга, която да спазва изискванията описани дотук.</li>
</ul>


<p>И не забравяйте, че само вие имате свободата да избирате дали да контролирате или да изгубите данните си.</p>
</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/freedom/about_online_services"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2009-04-24T15:08:27.000+00:00</updated>
  </entry>
  <entry>
    <title>„Честит рожден ден GNU“ вече на български</title>
    <id>tag:katsatov.org,2008:56</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>Благодарение на Ивайло Вълков приведствието на Stephen Fry по случай 25-ия рожден ден на GNU вече има и субтитри на български. Субтитрите в cp1251 и в utf-8 кодировка, както и самото видео можете да свалите от тук:</p>
<p><a href="http://gns.katsarov.org/happy-birthday-to-gnu/">http://gns.katsarov.org/happy-birthday-to-gnu/</a></p>

</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/freedom/happy_birthday_gnu"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2008-11-24T16:17:27.000+00:00</updated>
  </entry>
  <entry>
    <title>Да се завърнеш...</title>
    <id>tag:katsatov.org,2008:55</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>„Да се завърнеш в бащината къща, когато гроздето във вино се превръща“</p>

<p>Тези думи винаги са ме дърпали към дома. Е в бащината ми къща не се прави вино, вадят се карофи, но и това си ми е мило и родно.</p>
<p>
И така след шест години прекарани във Варна за съвсем кратко време събрах багажа и се върнах в Смолян. На много хора моето решение се струва налудничево. „Та повечето хора напускат малкия и отваат в големия град.“ Дали за да търсят изява, реализация, повече пари или нещо друго, но това е реалността за последните 18 години. А аз? Аз направих точно обратното.
</p>
<p>
Народът си го е казал: „Камъкът тежи на мястото си“, а моето място с всеки изминал ден все по-силно ставаше родния град. А и смятам, че и знанията, които съм натрупал през тези години ще са полезни за малкия град. Надявам се. :-)
</p>
<p>
Ами сега? Сега няколко дни почивка в дома. След това ще търся работа. А защо оставих работата и шансовете за реализиация в големия град? Не оставих тях. Оставих ежедневното напрежение, стреса, мръсотията, шума, забързаното ежедневие. Смятам, че само този, който не иска да работи няма да си намери работа, та дори и в град като Смолян. Че всъщност какво му е? Така че това не ме плаши. А тук? Тук е спокойно, тихо, чисто и зелено, точно както си го спомням. Хората са си същите добри, гостоприемни и услужливи. Елате в Родопите, ще видите. Който не ми вярва да провери.
</p>
<p>
И не на последно място приятелите от Варна. Всички ще ми липсвате страшно много. Но не тъжете, нали сме живи и здрави. Ще се виждаме, ще се чуваме. Това не е сбогом.
</p></div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/personal/the_returning"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2008-08-15T19:29:53.000+00:00</updated>
  </entry>
  <entry>
    <title>JavaScript аналогов часовник</title>
    <id>tag:katsatov.org,2008:51</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>Аналогов часовни състоящ се от две картинки, html, css и javascript. За javascript библиотека е използван mootools 1.2. Алгоритъмът е доста прост, така че може да се рализира и без mootools. Ще се радвам ако е полезен на някого. Препоръки и въпроси се приемат ;-)
</p>

<p><img src="http://www.katsarov.org/static/images/clock.png" alt="clock"/></p>

<p>Можете да го свалите тук: <a href="http://www.katsarov.org/static/files/clock.tar.bz2">clock.tar.bz2</a></p>

<p><em>24/04/2009 г. :</em></p>

<p><a href="http://dev.webface.bg/clock/" rel="external">Тук можете да видите демнстрация</a></p>

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<p> Ако часовникът Ви е харесал, направете дарение: 
<input type="hidden" name="cmd" value="_s-xclick"/>
<input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----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-----END PKCS7----- "/>
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donate_SM.gif" name="submit" alt="PayPal - The safer, easier way to pay online!"/>
<img alt="" style="display: none;" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1"/>
</p>
</form>
</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/software/javascript_clock"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2008-08-04T03:32:46.000+00:00</updated>
  </entry>
  <entry>
    <title>gNewSense splash screeen</title>
    <id>tag:katsatov.org,2008:50</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>
  Миналата седмица купихме на Роси нов компютър и за мен остана старата антична машинка, Compaq Armada 1700.</p>
<p>
  Та малкото му дискче (6GB) беше разделено на няколко дяла, които поотделно не стигаха за нищо. И така реших да го „забърша“ целия и да му инсталирам един свеж <a href="http://www.gnewsense.org/" rel="external">gNewSense</a>. След почти цял ден борба със съсипания му cdrom успях най-накрая да го инсталирам.
</p>
<p>
  За gNewSense могат да се кажат доста хубави неща, най-важното, от които е, че с изцяло свободен софтуер, но му намерих и един недостатък. Когато се стартира Gnome, ми се налага доста време да гледам ръбатия и огромен splash screen, който върви със дистрибуцията и доста ме дразни. В крайна сметка реших, че е по-добре да взема да си направя друг. И така в крайна сметка направих три.
</p>
<p>Ако ви харесват можете да си ги свалите <a href="http://www.katsarov.org/static/files/gNewSenese_splash.tar.gz">gNewSenese_splash.tar.gz</a></p>
<p><img alt="splash 1" src="http://www.katsarov.org/images/360082935_splash.png"/></p>
<p><img alt="splash 2" src="http://www.katsarov.org/images/491505041_splash_1.png"/></p>
<p><img alt="splash 3" src="http://www.katsarov.org/images/7827631_splash_2.png"/></p>
</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/art/gnewsense_splash_screen"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2008-03-31T17:56:04.000+00:00</updated>
  </entry>
  <entry>
    <title>James Hetfield</title>
    <id>tag:katsatov.org,2008:49</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>Какви неща ме кара скуката да правя понякога:</p>
<p><img alt="James Hetfield" src="http://www.katsarov.org/images/78645306_james_line.png"/></p></div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/art/james_hetfield"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2008-03-28T17:20:25.000+00:00</updated>
  </entry>
  <entry>
    <title>Catalyst на споделен хостинг</title>
    <id>tag:katsatov.org,2008:48</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>
  След като реших да си сменям хостинга или по-точно да си наема собствен се изправих пред проблем. На какво да си напиша новия сайт? Тъй като не харесвам особено PHP и си пописвам доста на Perl, се спрях на <a href="http://catalyst.perl.org/" rel="external">Catalyst</a>. И така седнах преди няколко дни и написах началната версия. Въпросът който остава беше как да го стартирам на хостинга след като там няма нито mod_perl, нито мога да стартирам собствен сървър.
</p>
<p>
  Единственото, което ми остана беше CGI.
</p>
<p>
  За целта трябваше да накарам всяка заявка да минава през CGI. Решението се оказа доста просто с помощта на mod_rewrite и на един .htaccess файл в основата на DOCUMENT_ROOT-а:
</p>
<pre>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/?cgi-bin/handler.cgi
RewriteRule ^(.*)$ /cgi-bin/handler.cgi/$1 [PT,L]
</pre>
<p>
  Оказа се, че стандартния скрипт, който генерира Catalyst не ми върши много работа (можете да откриете разликите сами), а и беше неудобен за дебъг. Та спретнах следното скриптче:
</p>
<pre class="perl_code">
#!/usr/bin/perl

use FindBin;
# Добавяме пътя до модула на приложението
use lib "$FindBin::Bin/../lib";
use strict;
use warnings;

# „Казваме“ на приложението че ще работи като CGI
BEGIN {
  $ENV{CATALYST_ENGINE} ||= 'CGI';
}

# Време е да заредим и стартираме нашето Catalyst приложение
eval {
	 require MyApp;
	 MyApp-&gt;run;
	};
# Ако възникне греша можем да я отпечатаме
if ($@) {
	printf("Content-type: text/plain \n\n");
	print $@;
}

1;
</pre>
<p>
  Та единственото, което остана е да „задоволя глада на животното“ и да инсталирам всички необходими модули, липсващи на хостинга в lib директорията на приложението. За целта може да си ги инсталирате при вас и после просто да ги копирате на сървъра.
</p>
<p>
  Имайте предвид обаче, че не всички модули могат да се използват локално, някои е необходимо да бъдат инсталирани на системно ниво. Така, че можете да помолите поддръжката на хостинга да го направи за вас.
</p>
<p>
  И за финал ако сте решени твърдо да ползвате Catalyst, не ви съветвам да се насочвате към споделени хостинги. Но ако сте инат като мен има начин ;-).</p>
</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/web/catalyst_on_shared_hosting"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2008-03-17T14:21:08.000+00:00</updated>
  </entry>
  <entry>
    <title>За кого да гласуваме?</title>
    <id>tag:katsatov.org,2007:44</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>За клоуните или за боклуците...?</p>
<p><img src="http://www.katsarov.org/images/dsc00074.jpg" alt=""/><img src="http://www.katsarov.org/images/dsc00075.jpg" alt=""/></p></div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/bg/Who_to_vote_for"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2007-10-25T13:17:11.000+00:00</updated>
  </entry>
  <entry>
    <title>Студенти, задължени да стават клиенти</title>
    <id>tag:katsatov.org,2007:43</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>За поредна година Технически университет - Варна задължават студентите си да си издават ISIC студентски карти, в което не виждам нещо страшно, но заедно с това тези карти са и дебитни карти към банка ДСК, от където идва и конфликта. Не мисля че е редно една институция (в лицето на университета) да задължава когото и да било да става клиент на коя да е банка или друга институция.</p>
<p>Другото нещо е, че също така задължават студентите да предоставят информация на Центъра за Развити на Кариерите, с което си действие де предоставят лична информация на центъра за всеки, независимо от това дали той желая да я дава.</p>
<p>На снимката се вижда копие от заповедта, но тъй като е правено с мобилен телефон и качеството му не е много добро, направих и препис от заповедта, който можете да прочетете по-долу.</p>
<a href="http://www.katsarov.org/images/dsc00071_big.jpg"><img src="http://www.katsarov.org/images/dsc00071.jpg" alt="заповед" style="border: none; width: 380px;"/></a>
<blockquote>

    <h3 style="test-decoration: underline; text-align: center;">ТЕХНИЧЕСКИ УНИВЕРСИТЕТ - ВАРНА</h3>
    <h3 style="test-decoration: underline; text-align: center;">ЗАПОВЕД</h3>
    <h4 style="test-decoration: underline; text-align: center;">No. 947 - ПФ 13.09.2007</h4>
    
    
    <p>Във връзка със записването на студенти за учебната <strong>2007/20087 г.</strong> и заплащането на семестриалните такси.</p>
    <h3 style="test-decoration: underline; text-align: center;">Нареждам:</h3>
    <ol>
      <li>В срок до <strong>10.09.2007 г.(събота)</strong> всички студенти <strong>задочно обучение</strong> да заплатят семестриалната такса и да бъдат записани в съответния горен курс.</li>
      <li>В срок до <strong>05.10.2007 г.(петък)</strong> всички студенти <strong>редовно обучение</strong> да заплатят семестриалната такса и да бъдат записани в съответния горен курс.</li>
      <li>Преди записването всеки студент <strong>редовно обучение</strong> е длъжен да заплати такса е размер <span style="background: pink">на 5лв. за издаване на <strong>ISIC карта</strong></span> за новата академична година и да попълни 1 бр. формуляр за ISIC карта и <span style="background: pink;">1 бр. формуляр за регистрация в <strong>Центъра за Развитие на Кариерата (ЦРК)</strong></span> и да ги предаде в съответната факултетна канцелария. Заплащането на таксата и получаването на формулярите става в Студентски съвет - <strong>стая 114 А на МФ.</strong></li>
      <li>Инспектор студенти извършва записването само след представяне на две квитанции за платени такси - семестриална и за ISIC карта и два попълнени формуляра</li>
      <li>Студентите, които не са платили дължимите такси в посочения срок се отстраняват от университета съгласно чл.13(13) ит ППЗС.</li>
      <li>Инспектор студенти на съответния факултет да изготвят заповеди за отстраняване на студенти поради неплатени такси до <strong>24.09.2007г.(понеделник)</strong> за студенти задочно обучение и в срок <strong>19.10.2007г.(петък)</strong> за студенти редовно обучение.</li>
      <li><strong>ФСО</strong> да осигури организация на работа на касата за плащане на таксите за обучение. Работното време на касата да се съгласува с това на факултетните канцеларии.</li>
    </ol>
    <p>Копие на заповедта да се даде на Зам. Ректор ЪР, Деканите на факултетите, Гл. счетоводител, факултетни канцеларии, каса, ЦРК и Студентски съвет за изпълнение.</p>
    <h3 style="test-decoration: underline; text-align: right;">РЕКТОР: /подпис и печат/</h3>
    <p style="test-decoration: underline; text-align: right;">/доц. д-р инж. О Фархи/</p>
</blockquote></div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/bg/students_forced_to_be_clients"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2007-09-27T19:09:49.000+00:00</updated>
  </entry>
  <entry>
    <title>"Тук говорим безплатно (но не с всички, дори и да си плащаме), това е Виватееееел"</title>
    <id>tag:katsatov.org,2007:41</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"> На 07.08.2007г. Роси Димова (pocu) подаде следната жалба до комисията за защита на потребителите:
<blockquote>
<p>Уважаеми г-н Председател, уважаема комисия,бих искала да подам сигнал за нарушение правата ми на потребител от страна на “БТК Мобайл” ЕАД (Вивател) вследствие на нелоялна конкуренция между мобилните оператори.</p>
<p>Сключила съм едногодишен договор с Вивател за ползване на техните услуги като съм потвърдила съгласието си за договора по телефона. Получих обещанието да ми бъде изпратен този договор като анекс към предишния (вече изтекъл) на пощенския ми адрес. Но вече цял месец подобно потвърждение на устната ни телефонна договорка не е пристигнало. За сметка на това получавам своевременно фактурите, които заплащам като редовен платец. Не съхранявам касовата бележка като доказателство за платена фактура, тъй като ползвам услугите на клиентския номер 123. По този начин научавам каква е дължимата от мен сума и дали е актуализирана информацията за моето плащане. Пазя касовата бележка, докато не чуя от информационната система, че нямам предходни задължения. Нямам оплакване в това отношение от Вивател. Дори при подновяване на едногодишния договор получих като бонус 20 безплатни минути в мрежата на Вивател и БТК в качеството ми на лоялен клиент, който не просрочва своите задължения, а ги погасява редовно и в срок.</p>
<p>Опитите ми да се свържа с Вивател на посочения клиентски номер (123) са  неуспешни в повечето случаи. Обяснението на операторите е, че са доста натоварени и не могат да отговарят на входящи обаждания, ако са заети. В същото време в уеб страницата на БТК Мобайл (http://vivatel.bg) няма посочен друг телефон или e-mail за контакт. Единствено на страницата за кариери са посочени e-mail-и за кандидатстване за работа във Вивател. В сайта липсва дори обикновена форма за контакт, за да могат клиентите да комуникират с компанията!</p>
<p>Основното нарушение от страна на БТК Мобайл обаче е нелоялната конкуренция, която води от името на БТК АД. И трите мобилни оператори предлагат на своите клиенти възможността да осъществяват разговори със стационарни телефони от мрежата на БТК. Но само Вивател не предлага тази услуга за телефонни номера от мрежите на други стационарни оператори в България. В конкретния случай това означава, че във Варна аз не мога по никакъв начин да прозвъня на номера, които започват с цифрата 9. Не мога да предоставя телефона си на приятел, за да се свърже той със своя интернет-доставчик Орбител, защото получавам гласово съобщение “Неразрешено избиране”. Работя във фирма-наемател в Бизнеспарк Варна и не мога да осъществя телефонно обаждане с наемодателя по въпроси, които касаят фирмата, за която работя.</p>
<p>При един от редките случаи, в които успях да се свържа с оператор на Вивател, поставих своя въпрос защо не мога да осъществявам разговори със стационарни телефонни номера, започващи с 9 във Варна, получих обяснение, че операторите не са сключили договор с Вивател. Попитах дали и кога се очаква да сключат договор, но ми препоръчаха да се обърна към самата фирма. Но БТК Мобайл нямат посочен телефон и e-mail за контакт в уеб-страницата си. А поради факта, че аз работя извън града, не мога лично да проверя във местния офис/клон в работното му време. На практика дори не мога да получа информация къде е този офис. Единствените контакти за клиенти са един телефонен номер - 123 и 0878123 ?!</p>
<p>Бих искала да ме уведомите какви са моите права в този случай и какво мога да направя, за да ги защитя. Освен това ме интересува дали можете да предприемете действия по този сигнал и какви ще бъдат те.</p>
<p style="margin-bottom:0;">С  уважение:</p>
</blockquote></div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/bg/vivatel_limits"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2007-08-31T13:38:33.000+00:00</updated>
  </entry>
  <entry>
    <title>Собствени бързи клавиши в GNOME</title>
    <id>tag:katsatov.org,2007:40</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>
Това са стъпките за дефиниране на собствени бързи клавиши за стартиране на желани приложения в Гном:
</p>
<ol>
<li>Отваряте „gconf-editor“ (Насатройки на програмите) като потребителя, с който сте влезли в Гном.</li>
<li> Отивате на „apps“ -&gt; „metacity“ -&gt; „keybinding_commands“</li>
<li>Двукратно натискате левия бутон на мишкатяа върху например „command_1“</li>
<li>Пишете името на приложението, което искате да се стартира, например „xmms“</li>
<li>Отивате на „apps“ -&gt; „metacity“ -&gt; „global_keybindings“</li>
<li>Двукратно натискате левия бутон на мишкатяа върху например „run_command_1“</li>
<li>Напишете например e.g. &lt;Control&gt;&lt;Alt&gt;c</li>

<li>Обърнете внимание на &lt; и &gt; за специалните функционални клавиши</li>
<li>ГОТОВО! Затворете „Настройки на програмите“ и натиснете CTRL-ALT-c и xmms трябва да се стартира</li>
</ol>
</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/software/personal_hot_keys_in_GNOME"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2007-06-19T21:04:42.000+00:00</updated>
  </entry>
  <entry>
    <title>Google позиция</title>
    <id>tag:katsatov.org,2007:38</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><del><a href="http://katsarov.org/tools/google_position/">google position</a></del> е прост скрипт, с който можете да проверите на коя позиция в google се намира избран от вас сайт, в зависимост от ключовите думи, по които се търси. Необходимо е в първото поле да дадете името на сайта (например: katsarov.org), а във второто желанитие ключови думи (например: алкохол мозъчни клетки). 
</p>
<p>
Така можете да проверявате как е откриван сайта ви по желаните от вас ключови думи.
</p>
<p>
<del>Скрипта можете да намерите на <a href="http://katsarov.org/tools/google_position/">http://katsarov.org/tools/google_position/</a>, а кода му можете да свалите от <a href="http://katsarov.org/public/google_position.tar.gz">
http://katsarov.org/public/google_position.tar.gz</a>. Разпространява се под <a href="http://www.gnu.org/copyleft/gpl.html">GNU GPL</a>.</del>
</p></div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/web/google_position"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2007-06-17T14:33:51.000+00:00</updated>
  </entry>
  <entry>
    <title>Не на несвободния софтуер част 1</title>
    <id>tag:katsatov.org,2006:36</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>Роси в разговор по повод ползването на Skype нарече събеседника си:
"Гаден, манифактурен комерсиалист." 
</p>
<p>
Това трябва да се превърне в нарицателно за всички, които се придържат към несвободния софтуер.</p> </div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/freedom/deny_non-free_software"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2006-08-20T16:57:58.000+00:00</updated>
  </entry>
  <entry>
    <title>Без ICQ</title>
    <id>tag:katsatov.org,2006:35</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">Поради морални причини от няколко дни не използвам ICQ. Тъй като протокола не е отворен и не желая да не съм наясно какво се случва с данните, които обменяме с вас, реших да се откажа от услугата. Тъй като мнението ми по въпроса съвпада с това на Калоян Доганов и намирам за безсмислено да повтарям думите му, можете да прочетете повече на блога му на адрес <a href="http://doganov.org/blog/freedom/software/refuse_to_use_icq"> http://doganov.org/blog/freedom/software/refuse_to_use_icq</a>. 

Все пак, ако някой иска да подържа връзка с мен може да го направи чрез jabber протокола. Той е наплъно свободен и отворен протокол, подържан от повечето мултипротоколни IM клиенти. Повече информация можете да намерите в статията на Калоян както и на <a href="http://www.jabber.org/"> http://www.jabber.org/</a>.</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/freedom/no_ICQ"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2006-08-10T17:29:00.000+00:00</updated>
  </entry>
  <entry>
    <title>Блогът ми без таблици :-)</title>
    <id>tag:katsatov.org,2006:34</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">Най-накрая успях да се оттърва от таблиците в дизайна на страницата. В момента може да не впечатлява с вид, но поне валидира, не използва таблици и от сега редизайнът ще бъде много по-лек. Надявам се, че ще съумея да се спавя с CSS-а. :-) CSS - свободата е пред мен!!!</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/personal/my_blog_without_tables"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2006-05-30T03:35:17.000+00:00</updated>
  </entry>
  <entry>
    <title>Първите ми стъпки в mason</title>
    <id>tag:katsatov.org,2006:33</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">На бирата в сряда <a rel="external" href="http://pau4o.hit.bg/">Камен</a> ме зариби по <a rel="external" href="http://www.masonhq.com/">масона</a>. Честно казано след дългите борби да го подкарам (породени от моята собствена глупост :-P ) съм доволен от резултата. Мисля, че могат да се получат доста добри и елегантни решения. Смятам да попрочета малко повече по въпроса. Мисля, че ще има хляб в него :).</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/personal/first_steps_in_mason"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2006-03-25T18:54:31.000+00:00</updated>
  </entry>
  <entry>
    <title>Имам и RSS :)</title>
    <id>tag:katsatov.org,2006:32</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">Реших, че ще е добре да сложа и един RSS :). Освен това направих и архив, макар и празаен :). Коментарите ги оставям за по-късно, тъй като утре изчвзвам в почивка за една семица и нямам желание да се занимавам с каквото и да било писане :)<br/>
</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/personal/I_have_RSS"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2006-03-09T16:36:22.000+00:00</updated>
  </entry>
  <entry>
    <title>Като за начало</title>
    <id>tag:katsatov.org,2006:4</id>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><b>Готово!!!</b> Началният вариант на дневника ми най-после е готов. Остана ми да добавя архиви, но за сега няма и какво да се архивира :).<br/> Очаквайте скоро и коментари, но на тозои етап ще ви оставя безмълвни :). Коментарите и препоръките ги запазете за малко по-късно. Просто нямах търпение да го пусна макар и в непълен вид. Е малко краднах дизайн и идеи от тук там, но като за начало мисля, че е добре.<br/>
И на мен дори цялото нещо ми изглежда малко "постно", но мисля, че се справих и че като за начинаещ "писач" е добре :)<br/>
</div>
    </content>
    <link type="text/html" rel="alternate" href="http://www.katsarov.org/blog/personal/in_the_beginning"/>
    <author>
      <name>Anton Katsarov</name>
    </author>
    <updated>2006-03-07T13:38:07.000+00:00</updated>
  </entry>
</feed>

