Четвъртък, Юли 02, 2009

Избори в Малка Джангърия

Една напълно измислена история родена единствено в болния мозък на автора (аз). Всяка връзка с реални лица и събития (може би) е случайна.


В едно далечно село насред Родопите, наречено Малка Джангърия живеели сплотено малка група прости селяни, които изкарвали прехраната си с отглеждане на картофи и планински билки. След като миналото лято се включили в политически съюз на съседните села Горна Джагърия и Средна Джангърия у иначе скромните жители на Долна Джагърия се появила един особен вид гордост, от това че вече са прости селяни част от една голяма мултикултурна общност. Пък и далеч по-развитите села членове на съюза им обещали субсидии за да развият картофените си ниви.
Всички в селото били много щастливи от живота си докато един ден не се оказало, че мандата на сегашния кмет - руският възпитаник Альоша Серьожин, е изтекъл и е време за нови избори.
По радио-точката пръв се появил Альоша, който започнал да напомня на съселяните си колко хубав е бил живота им под неговото управление.
Благодарение на собственика на свинефермата, който бил отявлен русофил, Альоша успял да купи половината ефирно време на радио-точката и дори събрал половин кесия жълтици за да се пусне на предплатен план на ТКМД (Телекомуникационна Компания Малка Джангърия) и да увещава електората по телефона.

Грубият полицай (с нежното име) Боцко Боцков издигнал платформа от два пробити варела, турил върху тях нара, на който нощно време спяла тъща му и започнал да крещи по чаршията:
- Не ви ли писна да ви управляват некадърници ! Само една тежка полицейска ръка може да оправи нещата!
И така докато пред двата му изтърбушени варела (щедро дарени от собственика на фурна "Фурната" - Гочо Пекаря) не се събрала малка група недоволни съселяни. Повечето от тях били там просто за да видят гипсирания крак на Боцко, който той счупил предния ден докато гонел прасето по двора, но имало и такива, които просто си мечтаели за полицейско село.

Докато народа слушал в захлас полицая на селото, от другата страна на площада, пред група от трима сакати ветерани от втората световна война и селския идиот Харалампи, нервно тропал с крак и крещял генерал Болен фон Клинкерхофен. Тук е мястото да се отбележи, че той отдавна не бил генерал, защото третия райх се разпаднал преди доста лета, но вероятно заради объркана рецептата, той още си мислел, че войната е в разгара си.
Генерал фон Клинкерхофен крачел наляво надясно и със спорадични крясъци обяснявал на четиримата партийни членове:
- Проблема на Малка Джангърия са преселниците от юг. Те се заселват на другия хълм и...
- Хайл ! - изкрещял Харалампи.
- Не съм довършил! Те се заселват по другия хълм и започват да обработват нивите, които по право принадлежат на вас!
- Хайл ! - повторил Харалампи.
- Чакай не съм довършил! Ние трябва да спрем преселниците и да си върнем властта над селото !
Болен! Победа ! Болен ! Победа ! - започнал да крещи генерала под келявите ръкопляскания на двамата ветерани (тъй като третия бил само с една ръка) и объркания поглед на Харалампи, който се чудел дали е подходящ момент да се провикне "Хайл!".

Точно в края на площада от терасата на втория етаж на имението си наблюдавал събитията княз Симеон Сакскобургебасиготиния. Той бил аристократ, който преди 45 години избягал чак в Красна Джангърия, но след като положението в селото се подобрило, той се върнал с идеята да оправи всички за 800 дни.
На тези избори той не бил много активен, от време на време карал ратая си лепи плакати на спирката и да агитира кърските работници да гласуват за истинската аристокрация.
Сега той седял на терасата си, допивал си 25 годишната кайсиева ракия и си мислел - "За какво е тая лудница, да се занимават будалите, аз си върнах къщата на тате и нивите на дедо, не ми е вече до избори".

Циганчето Маугли Костовистки също решил да се върне в политическата борба. Този път той решил да подходи по изцяло нов начин към агитацията. Купил си веб камера от съседното село и отишъл в читалището, където подредил зад себе си камара книги (грижливо премахвайки всички томове на Карл Маркс и Астрид Линдгрен) и започнал да отговаря на запитвания "по интернета"! Проблема бил само че за да могат съселяните му да задават въпроси и да видят отговорите им, той трябвало да става от едиствения компютър в селото.

През това време в бившето кино, което се помещавало в сградата на читалището, електората си бил събрал Гождоман Али Баба ефенди и обяснявал на гласоподавателите:
- Вижте сега, да ви обясня някои неща. Аз командвам парада. Аз мога всичко.
По времето на Маугли аз управлявах, по времето на Симчо пак аз, по времето на Альоша аз дърпах конците и дори да дойде оня селяндур, който си изгае на старажари и апаши - полицайчето, пак ще правя каквото си искам със селото. Нека да не се заблуждаваме, гласувайте за мене белким си спестя някоя друга пара от подкупи.
- Машала, ефенди ! - отговорили всички в хор.

Докато всички в селото били заети с предизборната дейност едниствено глашатая Иванчо изглеждал отчайващо незаинтересован от събитията. Той шавал из "текейсето" с туба нафта и си повтарял под нос - "Къде оставих кибрита, мамицата ви! Къде оставих кибрита!?!"

Неделя, Юни 28, 2009

За хората, бъдещето и информатиката

Да зададеш въпроса "За какво я уча тая математика?" в началото на първи курс в университета е проява на нетърпеливост. Да зададеш същия въпрос няколко години по-късно е проява на пълно неразбиране на материята.
Да уточня, първо, аз никога не съм бил особено добър по математика, дори имам доста изпити оставени "за като му дойде времето", но дори аз започвам да осъзнавам някои неща за живота. Има още две години

Започнах да си мисля някакви такива неща за живота и информатиката след като в Русе се запознах с двама пияни младежи от Манчестър. Те тъкмо бяха завършили училище и тепърва кандидатстваха в колеж. Когато ги питах какво ще учат и двамата казаха Network Administration (или нещо от сорта, не запомних точно, защото след това започнаха да крещят - hackers and crackers!).

Интересно ми стана защото в България едва ли някъде можете да намерите подобна специалност, при нас има математика, информатика и КСТ, друго ако се интересуваш и се занимаваш сам.
Докато при нас ни учат на нещо и след това ни обясняват за какво ще се ползва, на запад първо им казват какво ще правят и после им обясняват как, защо и т.н.

До сега винаги съм си мислел, че това е слабост на нашата образователна система, но се замислих над една мисъл, че в момента преподавателите учат студентите да работят професии, които все още не съществуват. За тях това е много сериозен проблем защото те специализират нещата. Ако искаш да станеш мрежов администратор учиш едно, ако искаш да станеш desktop програмист - друго, а за web програмист - нещо напълно различно.
При такъв подход, без да задълбаваш в нещата, промяната би била нещо, с което доста трудно можеш да се справиш ако не си запознат с основите.

Точно това според мен се опитва да направи нашата образователна система - преподават основите, преподават начин на мислене, а от там нататък е въпрос на желание и малко интелект да се развиеш и да научиш новите неща. Точно по същия начин по който първо виждаш нещата математически и след това разбираш как се повтарят в информатиката.
Някакъв юноша бледен беше казал, че информатиката е един от най-сложните дялове на приложната математика и посредствените математици е хубаво да си останат просто посредствени математици :)
Далеч съм от мисълта, че нашите университети вадят много по-подготвени и много по-кадърни информатици от западните, все пак всичко е въпрос на хора, ако си посредствен няма значение къде учиш. :)

Важното е да се стремим към самоусъвършенстване, да гледаме напред и да вярваме, че ако нещо е писано да стане, то ще стане по един или по друг начин :)

peace and love brothers \/

Сряда, Юни 24, 2009

Suse Studio - web, а ?

Най-после получих покана за SuseStudio beta tester.
За незапознатите да обясня за какво иде реч. Suse Studio си е едно готино уеб сайтче, в което можете да си "построите" сами linux дистрибуция на база SUSE, да си го изтеглите или дори да го тествате online.

Въпреки че софтуера е още в beta стадии се държи много прилично. Разработчиците са се постарали да не се усеща по нищо, че работите с web интерфейс, а не с desktop приложение.
При влизане те посреща един симпатичен робот и ти предлага да си избереш базова конфугурация, с която да започнеш същинското ръчкане и настройване. Възможните опции са server, minimal x, gnome, kde 3, kde 4 и minimalistic. След като си избереш шаблон за работа можеш съвсем спокойно да си селектираш какви пакети искаш да се инсталират допълнително и кои да се махнат, поддържат се зависимости, така че шанса да махнеш нещо, което не трябва, е доста малък.
Следват тривиалните настройки за локализация, добавяне на потребители и т.н.
До тук опциите са доста ограничени (поне ако искате наистина да разцъкате нещата на 100%), но идва интересната секция "Overlay files", където можете да качите на сървъра файлове, които да заменят вече съществуващите на диска. Ако знаете какво правите, това ви дава пълен контол над всичко което си поискате.
За финал остава естесвено самото сглобяване на системата, което в моя случай отне около 3 минути, като можете да си изберете дали да се build-не disc image, live cd, vmware virtual machine или xen virtual machine. Имате 15GB за експерименти. :)
След като процедурата завърши, освен очакваната функционалност да си го изтеглите има едно малко симпатично бутноче Testdrive. Тук започва забавлението. Можете да се свържете към виртуална машина стартирала вашата дистрибуция или през flash-овски уеб интерфейс или през ssh и да правите каквото си искате. Все пак не го приемайте като безплатен виртуален хостинг, всяка сесия се откача автоматично след 1 час - по мое мнение напълно достатъчно време за да разберете дали добичето работи като хората.
Виртуализацията на linux + GNOME ми се стори малко бавничка, но все пак върви върху QEMU (мен ако питате, лоша работа :)).

По-важния въпрос тук е на кого му трябва нещо такова ? Ако искаш да си направиш 100% твой си линукс имаш хиляди варианти - от linux from scratch, през debian net install, та чак до красивите и удобни инструментчета на ubuntu за тази цел.
На мен лично за подобен тип дейности ми допада най-много debian net install / arch linux net install идеята, тоест базова инсталация, която си слагате от диск и от там нататък всичко, което ви трябва се инсталира от net-а. По-голям контрол над системата - здраве му кажи.
Ще кажете - да, ама това е само за nerd-ове. Дори да приемем, че е така, аз пак не проумявам защо тези fancy user friendly shiny happy geeky-weeky teeny-weeny flashy нещица трябва да се случват в web ???
Само мога да си представя какви хардуерни ресурси са отделени за този проект. За мен чиста загуба на време и ток. :)

Whatever, проекта не е лош като изпълнение, ако ви допада идеята тествайте го и сами преценете до колко е полезен. Най-малкото си заслужава разцъкването. Можем само да се надяваме, че това ще донесе на linux някой друг фен.

P.S. За наблюдателните, Chrome под Linux тича та не мога да го догоня. Нямам търпение да излезе нещо по stable. На фона на това, което писах за Firefox, май открих новия си любим браузър.

Неделя, Юни 14, 2009

Web browser-ски истории

Преди да започна на философствам, да си излея мъката.
Оставям си лаптопа пуснат и излизам като само заключвам екрана за да не пипат любопитни хорица. Прибирам се на следващия ден. Пиша си паролата, влизам.
Всичко сече зверски. Системата е тотално неизползваема. 100% cpu usage. top показва, че най-времезаемащия процес е firefox с 2%. Имам 1gb RAM, заети около 400MB, swap 960MB от 1GB.
Swapoff твърди, че не може да освободи партишъна. Чудя се дълго време какво става.
Оказва се, че след убиване на Firefox (който по принцип не се спира) се освобождават 150MB RAM и 700MB swap! wtf !!!
Нямам идея какво прави тоя браузър и какви мамка му ги пише в тоя swap.

Колкото повече се увеличава числото след името Firefox, браузъра става все по-функционален, но и все по-тежък. За сравнение един тъп уеб четец като Opera направо кърти по отношение използване на памет и скорост. А уж нямат тази огромна потребителска база, нямат същия брой разработчици и т.н., а все пак се справят прекрасно, колкото и да не искам да го призная.
Firefox сякаш продължава да трупа потребителска база, осланяйки се само на стара слава. А борбата при браузърите става все по-ожесточена след като google се настаниха на масата с намерение да вземат голямо парче от тортата. Първите бета версии на google chrome за linux и mac вече са факт, а фурора, който предизвика излизането на версията за windows просто не се нуждае от коментар.
Microsoft май последни осъзнаха, че пазара на уеб браузърите не им принадлежи по право и набързо се втурнаха да вадят нови версии на своя печално известен Internet Explorer.
Opera без да вдига много шум вади версия след версия, всяка следваща стъпка е точно на мястото си и се радва на почти фанатични потребители.
Май само Apple от самото начало имаха ясна визия какво ще правят с техния Safari, но пък и тях никой не ги притиска - нямат конкуренция на Mac платформата и никога не са имали амбициите да направят нещо сериозно в света на така презираните PC-та.
Единствения останал жокер в ръкава на Firefox е неговота функционалност, но ако не се направи нещо по въпроса с бъговете и бавната работа, просто няма как да продължат нещата нагоре.

Наскоро се замислих много за нещата около браузърите покрай един нов проект наречен uzbl. Момчетата, които го разработват твърдят, че никой от съвременните браузъри не следва unix философията, че всяка програма трябва да прави само по едно нещо и то да го прави добре. Те казват, че не им трябва сложен потребителски интерфейс, искат удобство и най-важното - казват, че всичко - от табове, през bookmarks, до ad-blocker трябва да става извън браузъра в отделни скриптове.
Пробвах го, отзад стои webkit, използва режими на работа както VI, скритповете за bookmark и download са на тъп bash и е най-бързия браузър, който някога съм ползвал просто защото няма какво да го затормози.
Ясно е, че uzbl не е продукт за всеки, малко хора ще се хванат да разучат shortcut-ите и да настроят браузърчето така че наистина да им е удобно. Накратко тази програмка никога няма да добие голяма популярност, но отваря някои много интересни въпроси относно това как се прави качествен софтуер.

btw, Виктор (един приятел от Русе) му хареса идеята на uzbl и направи един негов си клонинг на qt, който си има дори и табове. Ако се реши да се доразвие проектчето, ще пуснем малко source пък да видим... :)

Четвъртък, Юни 04, 2009

PHP method chaining

class Chain{

  var $text;

  function addHello(){
   $this->text .= "Hello ";
   return $this;
  }

  function addWorld(){
   $this->text .= "World!";
   return $this;
  }

  function getText(){
   return $this->text;
  }
}

$obj = new Chain();
$text = $obj->addHello()->addWorld()->getText();
echo $text;
?>
Резултат:


Hello World!


Ей така можете да си chain-вате методи в php. Примера е идиотски, но показва общата идея без излишни глупости :)
Къде може да се използва вие си знаете. Аз писах едни active record нещица. Пести писане и най-малкото така кода ми изглежда по-добре :)

Понеделник, Юни 01, 2009

GNOME недомислица

От известно време забелязвам една огромна недомислица в GNOME и по специално във файловия мениджър Nautilus.
Когато тегля даден сериал от торенти съм леко нетърпелив и за това дава висок приоритет на първата серия и докато я гледам, оставям останалите да се теглят.
Проблема идва от това, че докато гледам филма той по едно време започва зверски да сече. Насича сякаш съм си пуснал full HD на стария 200 мегахерцов компютър :)
Някакъв странен процес ми вдига използването но процесора на 100%.
След дълго и продължително разследване (kill -9) се оказа, че това е процеса, който прави thumbnails на видео файловете в Nautilus. Нещата понякога се оправят когато просто изляза от папката, но понякога процеса забива и наистина си чака "убиването".
Очевидно някой е решил, че трябва да се прави нов thumbnail при всяка промяна във файла. Не особено умна идея при положение, че имаш няколко гигабайта видео, което постоянно се променя.

Решенията не са кой знае колко сложни.
Може да отваряте файла и веднага да затваряте Nautilus.
Може и просто да забраните правенето на thumbnails за видео.

и все пак
GNOME, ftw !!! :P

П.П. Това е за GNOME 2.24.1 на Ubuntu 8.10

Понеделник, Май 25, 2009

@home

Пиша това за тези болни студенти като мен, които учат на другия край на България и не са се прибирали скоро. (тези, които учат извън BG ще ги дразня някой друг път)

Та, да ви осведомя - прибрах се в Русе за няколко дена.
Тука има ядене в хладилника, постоянно, при това без дори да си мръдвам пръстта.
На всичкото отгоре бирата в хладилника е винаги студена и на практика никога не свършва.
Заслужават внимание и двете магически места в апартамента. Едното е коша за пране, хвърляш си дрехите там и след по-малко от 24 часа ги намираш в гардероба си изпрани (при това с омекотител), изгладени и прилежно сгънати !!!
Второто магическо място е мивката в кухнята, след като се наядеш си оставяш чинийте там и те се измиват сами.

Рано сутрин можеш да погледнеш с разнежен и кръвясал поглед по-малката си сестра, да кажеш вълшебната думичка и след 5 минути кафето те чака пред компютъра. При това без да те питат с колко лъжички захар. :)

По пода няма бирени бутилки, чорапи и пияни програмисти!!!

Когато ти стане топло не се събличаш, а пускаш климатика и отваряш студена бира. Когато ти стане студено си обличаш тениска :P

Когато се появи бабката с очилата за да иска пари за входа, не се бъркаш дълбоко с кисела физиономия, а безгрижно се провикваш през рамо "Татеее !" :D
Въобще не те интересува дали тока, водата и интернета са платени. Те просто са - факт!

За да не звучи чак толкова прекрасно ще отбележа и някои минуси.
Примерно когато се прибереш с пияна девойка под ръка в 3 през нощта следват малко неудобни въпроси. Не можеш да пушиш в леглото. Не можеш да си слагаш краката на масата (все пак може и да не те видят). От време на време се налага да изхвърляш чувалите със смет, да оправяш някой друг развален контакт или пък да боядисаш някоя друга врата/стена, но ...
Да не се залъгваме - заслужава си.

Само аз ли започвам да се чудя защо му е въобще на някого да се изнася от вкъщи ?!? Та тук е толкова хубаво ! :)

Вторник, Май 05, 2009

За Windows 7 и развитието на Microsoft през погледа на Linux потребител


Всички знаете, че съм заклет Linux фен и това много трудно може да се промени, но все пак не живея в пещера, виждам какво се случва и любопитството в мен напира да пробвам новия Windows 7.

Не знам дали това което се случва с компанията в момента е в следствие ръководството на Стив Балмър или Бил Гейст е оставил солидно "наследство", но в последно време виждам някои доста интересни промени в Microsoft.
Първо и най-странното за мен е, че Microsoft започват да се опитват да пишат качествен и функционален софтуер. Но за това ще напиша в отделен пост, Windows 7 идва с някои подобрения, които успяха да впечатлят дори nerd като мен :)


Трябва да се обърне внимание, че времето между излизането на Windows XP и Vista беше 7 години и въпреки че XP беше/e една много добра ОС, за тези години много неща се промениха. Това е старшно много време.
Преди време в блога си Mark Shutleworth (създателя на Canonical) писа за release cycle-а на една Linux дистрибуция и софтуер като цяло, тоест през колко време е оптималния вариант за нова версия. За Ubuntu това са 6 месеца. Дали са много или малко, не знам, но при всички положения е по-добре от 7 години. Общо взето според него съществуват 2 варианта, които можем да идентифицираме с двата най-големи desktop evironment проекта за Linux - GNOME и KDE.

GNOME разчитат на чести нови версии с малки подобрения, което дава увереност на потребителите, че проекта върви сигурно в дадена посока и липсва тоталния шок при сблъсък с новата версия, но пък се оказва проблем, че по-голяма част от потребителите не виждат съществена разлика между различните релийзи.

На другата крайност е KDE, който с всяка своя нова версия прави огромни скокове. Все пак при прехода от версия 3 до версия 4 беше пренаписана почти цялата среда. Такъв тип обновяване ентусиазира опитните потребители, но отблъсква редовия user, на когото му се налага да свикне с новата система. Освен това се губи много от стабилността на софтуера, KDE 3 стана наистина добра графична среда едва към версия 3.5, а кога това ще се случи с KDE 4 никой не знае.

Донякъде смятам, че именно този проблем се получи и с Vista. Дългия цикъл на обновяване даде достатъчно време на разработчиците да напишат каквато си искат функционалност, но резултата беше бъгъва работна среда, отблъскваща обикновения компютърен кибик.
Подозирам, че това се опитват да избегнат от Microsoft с честото пускане на нови версии, release candidates и т.н. при Windows 7.


Оставяйки потребителите да използват операционната система, колкото си рано искат, получаваш милиони бета тестери, на които не плащаш нито стотинка. Нови проблеми изникват постоянно и екипа разработчици има време да отстрани по сериозните от тях докато дойде време за официалното излизане на Windows 7.
Освен това имаш възможност с всеки следващ build, да вдигнеш пушилка по online медиите и да поддържаш вниманието насочено именно към този продукт.
Никак не лоша идея трябва да призная. Винаги (тайно) съм подозирал, че в MS работят умни деца :)

Нека все пак не забравяме името на компанията. Microsoft не дават нищо без пари. След като изпълните ролята си на beta tester и излезе официална версия, ако не обновите системата си на 1-ви март 2010г. компютъра ви ще започне да ви го напомня по много неприятен начин - като се изключва през 2 часа. Ако сте достатъчно упорити и издържите 3 месеца на това мъчение на 1-ви юни 2010 той окончателно ще спре да работи.
Microsoft-ска работа. :)

Интересно ми е как ще се развият нещата. Ще поживеем, ще видим. :)

PS. Няма лошо да си поиграете с Windows за няколко дена. Истината си остава в пигвина и демона - истинските приятели на geek-а :)

Сряда, Април 29, 2009

Новините днес

По принцип не чета новинарски сайтове, сега си припомних защо.

Вижте това:
През май по вода
Обикновена новина за времето. Дааа, ама не, КОСТОВ е виновен !
Вижте защо:


Коментари:
1) На английски звучи така "Дъъти мади уйедър" !!!!
2)Ще е хубаво времето супер
3)абитуриентите ще се къпят, няма как. 1-2-3-4-5-6-7-8-9-10-11-12 еееееееееееее
4)Костов е виновен.
5)Кога ще дойде хубавото време? Моля, съжалете се над нас!
6)Ти се побърка с тоя Костов....
7)Тоя Костов ти е само в глават.хахаха,Костов това,Костов онова явно го праиш за кеф,ама май е вече време да спреш щото ставаш банален вече.Сам си прави изводите.
8)Виновен е Станишев, който е накарал Костов да го направи. Това е, защото Станишев е бил изнервен, че любовникът му Джулио Суге е бил убит.
9)K O S T O V N A V L A S T ! ! !
10)DA MU MISLQT ABITURIENTITE... :)

След това невероятно мозъчноубийствено окровение, искам да попитам, сега Костов ли е виновен или Станишев ? И това означава ли, че само абитуриентите ще му мислят ако Костов дойде на власт ?
Политиката е сложно нещо.
За наша радост dnes.bg не се ограничават само с политика, други интересни заглавия са:
Замерят плевенски лисици с ваксини против бяс

Цъ, цъ, цъ вместо да ги лекуват ...
Гошко и Тошко нямаше кой да ги гушка зимата

И мене нямаше кой да ме гушка зимата, ама оплаквам ли се ?
Станишев в Кремъл – от "разпни го" до... "разпни го"

А Костов ?


Това са те - българските online медии. От тях ли затъпяваме или те затъпяват заради нас, не знам ?

Писане на PHP конзолни скриптове


Успях хубаво да си счупя Linux-а, опитвайки се да инсталирам една операционна система, която упорито твърди, че не иска да се инсталира на PC. След някои хора - потоп, след тая ОС(която не искам да споменавам) - reinstall :)
Та, успях да си спася htdocs, но понеже не съм от най-умните забравих да си копирам конфигурационните файлове. В следствие на това като си връщам нещата обратно трябва да си направя наново и всичките виртуални хостове.
За да се добави такъв хост трябва да редактирате 2 файла и да се направи една директория, което си е работа, а и когато трябва да го направиш много пъти, нещата не придобиват никак приятен вид.
И понеже съм си originaly мързелив реших да го направя със скрипче.
btw, винаги съм твърдял, че е по-добре да загубя 20 минути в писане на някаква глупост, отколкото да губя 10 правейки го на ръка и затъпявайки :)
Само да вметна, че пиша уеб шитни и хич не се радвам когато трябва да се правя на Linux администратор и за това ползвам xampp (в случай, че се зачудите за странните пътиша). Един такъв админ ще се хване и ще напише скрипта на bash и той вероятно ще изглежда нещо като това:


#!/bin/bash

#some backup
cp /opt/lampp/etc/extra/httpd-vhosts.conf /opt/lampp/etc/extra/httpd-vhosts.conf.backup
cp /etc/hosts /etc/hosts.backup

# creating some stupid vars :P
while read line
do
file="${file}${line} \n" ;
done < "/etc/hosts";

new_host="127.0.0.1 ${1} \n";
new_vhost="
\n
\t DocumentRoot /opt/lampp/htdocs/${1}/ \n
\t ServerName ${1} \n
\n \n";
new_dir="/opt/lampp/htdocs/${1}/";

#creating new virtual host
mkdir $new_dir;
chmod 755 $new_dir;
echo -e $new_vhost >> /opt/lampp/etc/extra/httpd-vhosts.conf
echo -e $new_host > /etc/hosts;
echo -e $file >> /etc/hosts;

#restarting the server
/opt/lampp/lampp restart

За да добавите нов виртуален хост просто изпълнявате:
./addvhost.sh test

И скрипта ще свърши останалото за да се добави хост с име "test".
Колкото и да е powerfull bash-а, не пиша по цял ден на него и примерно тоя скрипт ми отне около 15 минути, основно защото половината време трябваше да чета документация.
Ако сте като тъп уеб дИвелъпър като мене и php ви е по-удобен, вече (то не е много отскоро ама айде) можете да напишете същото и на php.
Нещо като това:

#!/opt/lampp/bin/php
$param = $_SERVER['argv'][1];

//create backups
copy('/etc/hosts', '/etc.hosts.backup');
copy('/opt/lampp/etc/extra/httpd-vhosts.conf', '/opt/lampp/etc/extra/httpd-vhosts.conf.backup');

// set some vars
$hosts_file = file_get_contents('/etc/hosts');
$vhosts_file = file_get_contents('/opt/lampp/etc/extra/httpd-vhosts.conf');

$new_host = "127.0.0.1 \t $param \n";
$new_vhost = "
\n
\t DocumentRoot /opt/lampp/htdocs/$param/ \n
\t ServerName $param \n
\n \n";
$new_folder = "/opt/lampp/htdocs/$param/";

// creating vhost
mkdir("/opt/lampp/htdocs/$param/", 0755);

$fh = fopen('/etc/hosts', 'w');
fwrite($fh, $new_host);
fwrite($fh, $hosts_file);
fclose($fh);

$fh = fopen('/opt/lampp/etc/extra/httpd-vhosts.conf', 'w');
fwrite($fh, $vhosts_file);
fwrite($fh, $new_vhost);
fclose($fh);

// restart the server
$output = shell_exec('/opt/lampp/lampp restart');
echo $output;
?>

За да си свърши работа скрипта иска да му кажете нещо от типа:
./addvhost.php test

Както виждате нищо страшно. Върши абсолютно същата работа и не съм засичал, но ми се струва, че ми отне половината от времето на bash-a.

Друго важно уточнение е, че тези скриптове са писани само за да покажат как хипотетично биха могли да станат нещата, вършат работа, но аз като потребител не бих ги използвал, най-малкото защото не дават възможност за допълнително настройване на виртуалния хост и няма абсолютно никаква проверка дали нещо по време на изпълнението не се е омазало. :)

За добро или лошо php се мъчи да излезе от сървърната среда и да се превърне в пълноправен език за административни скриптове и дори desktop приложения(phpgtk).
Наскоро гледах някъде в нета сравнение на езиците за програмиране и корабите. Примерно java беше описана като огромен транспортен кораб, който върши много неща, но не е много приятен за каране.
Там php беше сравнен с малък риболовен кораб - малък, бърз и върши точно това, за което е направен.
За мен лично така и трябва да си останат нещата, но нищо не пречи на php да се пробва при десктоп приложенията.

edit: За времето за което написах тези скриптове и този пост, можеше да си свърша работата, но нямаше и да е наполовина по-забавно :)