Пролетната екскурзия – Ден 2 – Златна Панега, Проходна, Съевата дупка

May 12th, 2013

Накрая на Ден 1 пристигнахме в Луковит, което щеше да ни е базата за следващите приключения.

Хапнахме в едно заведение, което имаше платформа на реката. Мисля че се казваше "Гущера". Много прилично и евтино. Оказа се че след 10 часа вечерта заведението се превръща в дискотека - изметоха вътрешните маси, окачиха една диско-топка, пуснаха и музика... но нещо нямаше клиенти.

Специалитет "Гущера", който се оказа пиле :) Препоръчвам.

Поглед към главната улица

За горната снимка разпънах статива, при което естествено комшиите по маса станаха любопитни и общителни:
- Ама това професионален фотоапарат ли е?
- Не. (щом не ми е професия и не си изкарвам парите с него - значи не е "професионален")
- А за кого снимате?
- За националното радио.
- Иха!

Центъра беше съвсем наблизо и се оказа че на площада прожектират безплатно кино. Естествено - великденски му работи. Не видях кой е филма, ама имаше Исус, кръстове и манафски римляни.

Спахме в хотел "Дипломат парк", който се оказа складовата база на бойлерите и камините "Дипломат" :)

На следващата сутрин първи приоритет беше закуската. Ханджийката ни упъти към някаква баничарница на главната, която посмъртно не успяхме да намерим. После ни дойде на акъла че е неделя и даже да я бяхме намерили, най-вероятно да беше затворена. Ето тук влязоха в действие аварийните кроасани. Намерихме Лидл, където презаредихме същите и взехме малко мръвка за обяд.

И газ към атракция №1 - геопарк "Искър - Панега".

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

Сега след като минахме от там мога да ви покажа крайпътния ландшафтен парк "Панега", заснет по GPS:


View Larger Map

Това са и двете табели на входа, които дават представа за разстоянията:

Цък за пълен размер

Стегнахме раницата с манджите и хванахме пътеката.

От тук се почва

Първите стръмни стълби, които трябваше да ни подготвят за какво ни чака...

Съвсем скоро попаднахме на първата беседка, мостче и изглед към реката.

Реката беше чудесна. До сега не бях виждал такъв цвят вода - синьо-зелено, направо златно. Синьото беше толкова наситено, че в първия момент човек си мисли че това е някаква тиня. В следващия обаче вижда прозрачната като кристал вода в плитчините. Потокът беше бавен и спокоен.

Всяко мостче имаше по чифт стръмни дървени стълби в двата си края.

Единствения циментов мост. До него може да се стигне с кола.

Винаги от едната страна на Панегата имаше стръмен камънак. Ако се загледа човек, вижда скални ниши и пещери. Района е карстов и е надупчен като швейцарско сирене.

Пътеката се виеше по левия бряг на реката, като току я пресичаше с някое друго дървено мостче. А ние ахкахме и пъшкахме от гледките.

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

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

Току-таме се появяваха беседки. Всъщност да ги нарека "беседки" ще ги обидя. Това бяха някакви царски покои с огнища, пейки, скамейки, маси, торби за боклук и даже едната имаше тоалетна :) Тук някъде ми стана ясно че в Луковит нямат цигани. Всичките тия неща си стояха на мястото, пейките и масите не бяха насечени и изгорени, тухлите от стените не бяха "набрани" от някой нуждаещ се гражданин от ромско потекло. Единствения вандализъм, който видяхме (ако дори мога да го нарека така) бяха имената на посетителите, надраскани с въглен по гредите.

Такива места имаше 4-5 като последното ни обра всички точки, но за него след малко.

След малко пътеката се превърна в дълъг мост, накован от едната страна на скалата. Малко паянтово изглеждаше :)

Минахме покрай още една чорбаджийска беседка, още 1-2 моста и айде на следващата пътека на смъртта :)

След края на моста веднага в ляво зееше тъмна скална паст.

Изглеждаше доста дълбоко, а началото му честно казано си беше кенеф - беше застлано с тоалетна хартия, салфетки и т.н.

Обаче беше тъмно, а ние бяхме тръгнали на разходка, така че до никъде не успяхме да се пъхнем. Върнахме се към крайречната пътечка.

Съвсем скоро попаднахме на следващото... място за пикник. Не мога да го нарека "беседка", повече му отива "кръчма"!

Под скалния навес има масивна постройка. Вътре и вън - маси и пейки.

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

Чухме някакво бучене и си викам че се върнахме в действителността с огромно гнездо на оси. Оказа се че не са оси. Кръчмата имала изба, в който има извор с подземна река! Ебаси чудото.

Втория етаж и терасата. Толкова много места, че някой спокойно може сватба да вдигне.

Изглед от горе

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

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

Хапнахме и се метнахме на железния кон към Карлуково. Там бяхме набелязали интересни места из Карлуковския карстов комплекс като гвоздея на програмата щеше да бъде пещера Проходна с Очите.

По крайпътните табели се ориентирахме до Пещерния дом. Това е хотел-ресторант, кацнал на върха на едно от платата в района. В дома има печат от 100-те национални обекта. Имало е музей на пещерите, който в момента се превръща в конферентна зала. Защо да държат музей на пещерите в Пещерния дом. Трябват им конферентни зали.

Оставихме колата на паркинга и потърсихме пътеката за Проходна. Имало табела натам, по която даже е имало надписи преди 20 години. Сега имаше правоъгълна бяла тенекия. Но човекопоток имаше доста, така че не може да се объркаш.

10 точки ако успееш да намериш пещера Проходна на тази снимка. Подсказка: огромна е!

Изглед към Лудницата.

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

Като наближаваме започваме да си даваме сметка за мащабите на пещерата. Става въпрос за нещо колосално. Нашия 14-етажен блок може спокойно да се събере вътре и да остане място за още 20 като него. Нащраках една кръгла панорама, която стана учудващо добре:


Prohodna cave in Bulgaria

Димо в преден план, а точките отзад са хора. Вътре наистина е огромно!

Някой наднича иззад камъка...

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

Очите

Другия вход

Прибрахме се до Пещерния дом и се метнахме на колата към следващата дестинация - село Златна Панега с карстовия извор на реката, на която се възхищавахме по-рано. За него се бях подготвил както мога с данни от разни блогове и Streetview, но не можахме да го намерим. Попаднахме на едно широко синьо езеро, което беше оградено с бариери и табели "Санитарно-охранителен пояс" и толкова. Може би това беше или просто ми е била грешна информацията.

Но нищо, следващия чекпойнт не беше далече - село Брестница и пещерата Съевата дупка. По данни от нета входа беше 4 лв + 2 лв ако искаш да снимаш. Е, оказа се че снимането е абсолютно забранено... Нали трябва да си продават картичките и дисковете :(

За хората обаче забрани няма и скоро всички се разщракаха с телефони и сапунерки, въпреки мрънкането на водача. Рекох си че това и аз го мога и заех стелт-позиция, благодарение на която ще видите следващите снимки.

Входа на Съевата дупка

Тамън се беше събрала група от някаква детска градина. Имаше хлапета по потничета и джапанки. Аз си стягах гащите след вчерашното приключение в Леденика. Всъщност оказа се че Съевата дупка е много човешка пещера. Нямаше атлетически изцепки. Където тавана ставаше неудобно нисък, беше къртено. Принципно ми е ясно че това не е хубаво за пещерата, но пък туристическия маршрут показва може би 5% от цялата ѝ дължина - какво пречи да е направен удобен тогава.

Името на пещерата идвало от двамата братя овчари Съю и Съйо :) които я използвали за подслон при лошо време. На входа били намирани останки от скорошно пребиваване (и запиване). Първите няколко зали бяха без пещерни образувания - подземните води минавали от там понякога и излъсквали стените. Нататък обаче обстановката ставаше доста богата с огромни и много красиви стала{ктити,гмити,ктони}.

В пещерата е имало голямо земетресение. Нечовешко е да видиш сталактон с диаметър един метър с диагонална пукнатина и няколко сантиметра приплъзване между двете части. Или назъбени останки от някога величествени сталактити, тежащи поне по 10 тона, сега лежащи на пода. Сталактитите се образуват адски бавно - 0.13 мм на година, или сантиметър на сто години. Изпочупените гиганти там може би се образували преди Homo Sapiens да се появи като вид.

В Съевата дупка има концертна зала с добра акустика. Май всяка пещера която съм виждал си има концертна зала. Тук хлапетата ни изпяха "Седнало е Джоре дос" :)

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

Имаше едни интересни сталактити, които растяха на страни. Получава се когато в пещерата има постоянно течение, което издухва капещата вода в една посока.

Съевата дупка ми хареса повече от Леденика. Нямаше упражнение по провиране и човек може изцяло да се наслади на красотите. Постоянно имаше изненади и всяка зала си имаше характерна за нея пещерни образувания. Повечето от тях бяха с внушителна големина. Препоръчвам.

Около Съевата дупка започваха опознавателни маршрути. Имаше табела за някакви атракции и Via Ferrata. Via Ferrata ("път на желязото") е пътека от железни въжета и стълби, преодоляващи непристъпни скални терени. На мен винаги ми се е искало да видя такова, но не знаехме колко време ще отнеме и го оставихме за другия път.

Следващия главен чекпойнт беше град Троян. Бяхме малко напред от графика, та минахме през язовир Сопот (намиращ се до село Сопот, което няма нищо общо с град Сопот ;) ) за малка почивка.

Една моторница пърпореше и вдигна вълнички из целия язовир:

Тук прицелихме едно ресторантче до язовирната стена, където да заредим вода. Оказа се че не работи.

Изчерпахме плана за деня и към 7 и нещо се стоварихме в Троян. Настанихме се в хотел "Марс" почти на центъра. Ударихме по един душ, почивка, и като се стъмни се разшавахме навън. В Троян беше много пусто. По улиците нямаше жива душа, с изключение на пияна компания младежи на площада, която ни гледаше лошо.

Брей, че фонтанчета

Имахме указания да хапнем в "Старата къща". Обстановката беше революционерско-възрожденска. Ядох пикантно пиле по хайдушки. Тия хайдуци яко са маали люти чушки :) Като ми пламнаха ушите ми идваше да си вдигна собствено въстание. По едно време се вдигна патардия - някакво псевдо-рапърче не искаше да си плаща сметката. Значи за една вечер в Троян това беше втората младежка компания, която не носеше на пиене.

Прибрахме се и откъртихме яко. Доста се поизморихме, но видяхме уникални местенца. Златната Панега ми влезе в Топ 10 на дестинациите. Ако има книжка "Елате в България и вижте:", ландшафтния парк Панега ще е вътре. Проходна ме смая с размерите си. Съевата дупка също остави много добро впечатление. И по трите места имаше още какво да се види, като се надявам някой ден пак да мина от там.

Пролетната екскурзия – Ден 1 – Леденика, Вратцата

May 8th, 2013

Онзи ден си спретнахме една малка тридневна екскурзия Враца - Луковит - Троян. Доста път избихме, доста красоти видяхме. Пъхнахме се в три пещери и се разходихме по една супер яка река. И още, и още...

Събота 5 часа сутринта - принудително събуждане от възбудените пилета по клоните под прозореца. Няма как ще се става рано, и без това път ме чака. Зареждане на важни течности - нафта, вода и ракия и аварийни кроасани от магазина. Що е то "авариен кроасан"? Като тръгнеш да обикаляш сутрин в непознат град и не намираш ни една работеща баничарница, ще разбереш ;)

Пуснах се до София с лежерните 100 км/ч по Тракия и разхода на ситроена падна до 5.5. И пак изпреварих малко графика, но времето беше употребено в кварталната баничарница там. Забрах другия член на експедицията - Димо, и хванахме към Враца. Чийтнахме изходящия трафик от столицата през едни странични села и за малко да се забутаме в Кремиковци, но с някаква странна врътка стъпихме на правилния път. По АМ "Хемус" за първи път карах и ми се стори интересна магистрала. През пет минути я тунел, я мост. Какви криви мостове все над гигантски урви - красоти. От магистралата към Ботевград слязохме по интересен пътен възел на три етажа. Малко преди обяд се добрахме до Враца.

Брей, там имат голям Балкан. Ама не от онзи нормален Балкан, който съм виждал към Карлово или Казанлък, а съвсем различен Балкан тип скала. Огромни зъбери, отсечки от по 200-300 метра висящи над пътя. Врачанци как спят спокойно като знаят, че това може да им падне на покрива... Интересна планина е там. Пътя се виеше долу в ниското и като погледнеш наляво - скала, като погледнеш надясно - скала. На долу - рекичка, а около нея полянки с беседки, цър-пър, пътечки... Много угодно направено. Зарекохме се да спрем тук на връщане.

Завъртяхме се по завоите на прохода Вратцата, минахме разклона на Згориград, където толкова се шашнах от табели че с десен мигач описах лява окръжност :) И нагоре. Направи впечатление че тук-таме между завоите има забити пилони и седалков лифт. Горе спряхме да видим лифтовата станция - пълна скръб. Изоставена от години, от самата станция са останали само едрите елементи, които не могат да се свалят. Чудно обаче че въжето, седалките и пироните стояха почти непокътнати. Във Врачанско нямат ли цигани да нарежат всичко за скрап?


Поглед надолу към Згориград

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

Района около обръщалото е готин. Хем е спортен, хем е скараджийски.


Към пещерата се строеше яко.

Всичко беше превърнато в строителна площадка по изграждането на "тематичен парк".

Тези ще се виждат интересно на сателитните снимки

Всъщност едвам намерихме къде е самата пещера измежду всички багери, кранове и разкопани траншеи. И сега разбрах защо се казва "Леденика" - като застанеш на входа и те подхваща едно свежо течение отдолу. Много приятно в 30-градусовата пролетна жега.

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



Имам чувството че едни и същи пещерняци дават имена на всичките образувания. Във всяка пещера която съм влизал има стандартните - Дядо Мраз, Баба Яга, младоженците и т.н.


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


Едно от по-широките "чистилища"



Езерото със съкровището

След половинчасовата обиколка се върнахме обратно в света на жегата и задухата. Отдадохме нужното уважение на кебапчийницата и хванахме надолу.

Спряхме под голямата скала и се ококорихме - някакви луди се катереха горе по каменните зъбери :)

Общ изглед на камънака

Открийте тези в горната снимка

Или тези

Много рахатно е направено там - беседки, огнища, мостчета над реката. Няколко образователни маршрута тръгваха наляво-надясно. Тук-таме бяха опънати палатки.

Ручейче

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

Следва - Ден 2

Hello, Android!

April 23rd, 2013

От едно време насам като се прибера вкъщи и си пускам да слушам онлайн радиа. А от както открих Digitally Imported и си лягам с пуснато радио.

Понеже аз съм доста мързелив тип (признавам си), по едно време ми стана тежко както си седя на дивана с крака върху масата да ставам да ходя до десктопа и да сменям радиото или да го спирам. Слава богу - има SSH и mplayer, така че тези неща мога да ги правя от лаптопа който се намира на фундаменталното разстояние на 3 метра от бюрото. Другия проблем е че искам радиото да се спира половин час след като си легна. Има много приспиващи станцийки, но не искам да бучат през цялата вечер.

Първия ми порив беше да сложа rc0.d скрипт на лаптопа, който преди shutdown да се вързва към десктопа и да прави някаква магия с `at` и `killall mplayer` която да гаси радиото след 30 минути. Но това щеше да бъде много лесно, а пък ми се занимаваше с нещо ново.

И нали сега са модерни мобилните приложения, реших да пробвам да си напиша апп за телефона. Свалих официалния ADT-bundle с инструментите за разработка и почнах. Тук да спомена че с Java имам един-единствен опит от университета и нищо повече. Какви са ми впечатленията:

Eclipse
+ той бил много читав редактор с всичките нужни code completion-и, javadoc popup-и, syntax highlights и т.н.
+ превъзходна интеграция с дебъгера на андроида - разработчиците от Google са си свършили работата
+ интеграция с емулатора, който е идеален за тестване на бутони, поведение... доста е тежък обаче и този апп през повечето време съм го тествал директно на телефона
+ logcat - инструмент, който вади директно дебъг съобщенията от емулатора или телефона в еклипса. Първия път като го свързах към телефона и се шашнах. МАЛЕ, всички нишки и процеси продуцират огромно количество дебъг съобщения и exceptions :D Хората не си ли махат дебъга в продукшън версиите на приложенията?
+ понякога logcat решава че няма да работи повече, което се оправя с рестарт на IDE-то
+ еклипса много ограничава писането на кода в добрия смисъл - не те оставя да пишеш глупости, за всеки проблем (примерно assign type mismatch) излизат възможните решения и кода често се пише с цък от мишката
+ кода наистина се пише с цък от мишката - ако ви трябва да имплементирате метод от parent class, 3 клика и шаблона ви се налива във вашия код
+ няма вградена интеграция с SVN
+ от много ум понякога изтрещява и започва да дава несъществуващи грешки, което се оправя с рестарт на IDE-то
Java
+ струва ми се много странен език като идвам от web програмирането
+ по-ниска степен на абстракция от web езиците и следователно:
+ нещата стават с адски много писане. Примерно един file_get_contents("http://domain.com") от PHP в Java става с 30 реда плътно изписан код, в който се ползват 15 различни типа обекти
+ няма асоциативни масиви, което сериозно ми бърка в здравето. Има разни workaround-и като да се ползват обекти, ама не е същото.
+ много грозни stack trace-ове, на които още не мога да свикна :)

Android
+ доста подреден lifecycle на приложенията
+ подробна документация на официалното място, но ми се струва доста суха. В Stackoverflow обаче има хиляди материали с примерен код
+ във връзка с горното, 90% от писането на кода е да намериш вече решения проблем и да го copy-paste-неш правилно :)
+ нишки и кой код в коя нишка се изпълнява... редовно се опитвам да достъпвам елементи от UI-нишката от друга нишка и естествено не се получава :) Другия проблем е програмно да си извадите бавните операции в задна нишка, защото иначе се получава лагване на апп-а.
+ layouts, където си седи презентационната логика и activities, където си седи бизнес логиката
+ broadcast receivers, или слушатели за глобални събития
+ запазване на settings между различните изпълнения на апп-а, обаче settings трябва да са от много примитивен тип
+ куриозно е да се опиташ да натъпчеш UI в такива малки разделителни способности - буквално след третото текстово поле и мястото свършва :)
Първата идея беше на десктопа да направя няколко PHP скрипта, които общо взето да правят system('mplayer нещоси') и от телефона да ги изпълнявам с HTTP GET заявки. Но се оказа че, да направиш HTTP GET в Android е грозно, голямо и ужасно, поне за текущите ми умения, така че тази идея беше отхвърлена още на първата вечер. Втората идея беше да се ползва SSH като от телефона директно се пращат командите към десктопа. Това се оказа доста по-лесно, че и целия апп стана много универсален.

И ето го апп-а My Multimedia Controller, който вече взе да придобива малко търговски вид. Качвам и кода, някой ако иска да ми се подиграва :) Сериозно, не бих се подписал под него и мисля че трябва да бъде принтиран на хартия и ритуално изгорен. Обаче пък приложението работи.
Features:
+ управлява нивото на звука на десктопа
+ превключва измежду няколко радио станции
+ запомняне на "домашна WiFi мрежа". Ако се конектнете към нея, ще получите нотификация, от която да се пусне апп-а
+ sleep mode - таймер за спиране на радиото, точно като sleep timer-а на телевизорите :)

Prerequestes:
+ Linux desktop, `amixer` за контрол на нивото на звука (`amixer` вече не е задължително изискване от r17 натам), `mplayer` за свирене на радио станциите
+ Android 2.2+ device

Required permissions:
+ INTERNET - за да работи SSH
+ ACCESS_NETWORK_STATE и ACCESS_WIFI_STATE - за нотификацията при конект към домашната мрежа. В една по-ранна версия на приложението при такъв конект се пускаше самото приложение, но с практиката се оказа че това е доста intrusive behavior и оставих само нотификация :)

 

TODO:
+ профили за SSH - да запазва данните за конект за повече от 1 PC добавено в r13
+ повече контрол върху различни миксер канали и възможност за софтуерно volume добавено в r17
+ динамично въвеждане на радио станции, че в момента URL-тата са хардкоднати
+ иконката да се смени с по-добра
+ обратна връзка за текущо свирената песен (ICY info тага, ако го има)

 

 

Download:

Project r20 - 1.7MB

APK r20 - 337KB

Не е финална версия :)

Музикаутор – или как крадецът вика „Дръжте крадеца“

April 18th, 2013

Преди две години Григор Гачев и Свилен Мицов бяха написали по един материал за дружеството за защита на авторски права на текстописци, композитори и аранжори – „Музикаутор“, и как от 3000лв. постъпили от концерт на група „Сигнал“ в дружеството, авторите на текстовете, музиката и аранжимента, които са отново музикантите от „Сигнал“ са получили едва 23лв.! Излиза, че организацията, която би трябвало да помага на музикантите да събират печалбите от своето творчество, гълта 99% от тях и дава на реалните автори на музиката едва 1% и по-малко.

Видимо от двете публикации, още преди две години от Музикаутор са твърдели, че са закупили скъп софтуер, с който отчитат и разпределят честно и точно постъпленията за авторите. Митко Щерев обаче, който напусна управителния съвет на дружеството в края на миналата година каза, че такъв изобщо не е бил закупен. Реално към момента авторите на музиката нямат никаква представа:
1.Колко пъти и къде са били излъчени техни произведения
2.Какъв е принципът на отчитане на печалбите и какъв процент от тях трябва да получат те.
По този начин, когато накрая „на сляпо“ получат някакви пари (разбирай жълти стотинки), те няма как да докажат, че са били ощетени. Измамата на Музикаутор лъсва само когато автори като Сигнал си заплатят правата за концерт и накрая от тях получат по-малко от 1%.

През последния месец Музикаутор отново редовно се появява в медиите - наскоро пусна черен списък с некоректни платци, на всичкото отгоре води и медиен спор с бТВ. Защо само медиен, а не съдебен? От телевизията обявиха, че са изплатили всички дължими суми на Музикаутор и това, което от дружеството се опитват да правят е, да интерпретират подписания преди десетилетие договор по по-различен начин, така че да увеличат сумите, които от телевизията им дължат.

Излиза, че в Музикаутор не само нямат ясен механизъм за отчитане печалбите на авторите на музика, и не само не работят в полза на музиканти, аранжори и текстописци, ами и се стараят да „изсмучат“ възможно най-много от ползвателите на музиката, въпреки предварително уредените отношения с тях с договори. Правилно Свилен Мицов написа в блога си, че в сравнение с Музикаутор „Дон Корлеоне е бил пълен тъпак“.

Linux + scheduled tasks

March 25th, 2013

Може да ви се наложи да стартирате команда по часовник или по време когато не сте на машината.
Единият вариант който се използва е cron, но това е по-скоро за задачи, които се повтарят във времето. Няма да го разлеждаме, тъй като нета е пълен с примери и на всеки рано или късно му се е налагало да си блъска главата с него :)

По-интересното е да направим единично стартиране на задача по зададено време.

В Линукс това става много лесно с командата `at`:


(19:18:49)[ivanatora@~]$ at 19:20
warning: commands will be executed using /bin/sh
at> beep
at>
job 17 at Mon Mar 25 19:20:00 2013

Забележка: това <EOT> предполагам че е end-of-terminal и се получава с CTRL+D.
В случая задачата която ще се стартира е `beep`. Можете да напишете цял скрипт в промпта на `at` или да укажете външен файл който съдържа скриптираните задачи чрез `at [-f file]`. Отбележете че интерпретаторът, с който се изпълнява скрипта в случая е /bin/sh - това ще ви се отрази ако искате да скриптирате по-сложни задачи използвайки вградените възможности. Естествено, нищо не ви пречи да стартирате скрипт писан на какъвто и да е език:


(19:23:46)[ivanatora@~]$ at 19:50
warning: commands will be executed using /bin/sh
at> php /home/ivanatora/test.php
at>
job 18 at Mon Mar 25 19:50:00 2013

Списък с текущите активни задачи може да видите с `atq`:


(19:24:02)[ivanatora@~]$ atq
18 Mon Mar 25 19:50:00 2013 a ivanatora

Може да се зачудите къде отиде задача 17? Ами тя изтече докато напиша тези редове ;)

Може да изтривате задачи от списъка с `atrm`:


(19:25:35)[ivanatora@~]$ atrm 18
(19:26:13)[ivanatora@~]$ atq
(19:26:37)[ivanatora@~]$

Може да преглеждате с детайли определена задача с `at [-c job]`:

(19:27:20)[ivanatora@~]$ at 19:30
warning: commands will be executed using /bin/sh
at> beep
at>
job 19 at Mon Mar 25 19:30:00 2013
(19:27:37)[ivanatora@~]$ at -c 19
#!/bin/sh
# atrun uid=1000 gid=1000
# mail ivanatora 0
umask 2
SSH_AGENT_PID=2367; export SSH_AGENT_PID
GPG_AGENT_INFO=/tmp/gpg-xsDFU4/S.gpg-agent:2368:1; export GPG_AGENT_INFO
XDG_SESSION_COOKIE=4784344ffacd7f8cf96108324bae42fb-1364229708.104884-44687589; export XDG_SESSION_COOKIE
WINDOWID=37748745; export WINDOWID
GNOME_KEYRING_CONTROL=/tmp/keyring-bylSRi; export GNOME_KEYRING_CONTROL
GTK_MODULES=canberra-gtk-module; export GTK_MODULES
USER=ivanatora; export USER
LS_COLORS=rs=0:di=01\;34:ln=01\;36:mh=00:pi=40\;33:so=01\;35:do=01\;35:bd=40\;33\;01:cd=40\;33\;01:or=40\;31\;01:su=37\;41:sg=30\;43:ca=30\;41:tw=30\;42:ow=34\;42:st=37\;44:ex=01\;32:\*.tar=01\;31:\*.tgz=01\;31:\*.arj=01\;31:\*.taz=01\;31:\*.lzh=01\;31:\*.lzma=01\;31:\*.tlz=01\;31:\*.txz=01\;31:\*.zip=01\;31:\*.z=01\;31:\*.Z=01\;31:\*.dz=01\;31:\*.gz=01\;31:\*.lz=01\;31:\*.xz=01\;31:\*.bz2=01\;31:\*.bz=01\;31:\*.tbz=01\;31:\*.tbz2=01\;31:\*.tz=01\;31:\*.deb=01\;31:\*.rpm=01\;31:\*.jar=01\;31:\*.war=01\;31:\*.ear=01\;31:\*.sar=01\;31:\*.rar=01\;31:\*.ace=01\;31:\*.zoo=01\;31:\*.cpio=01\;31:\*.7z=01\;31:\*.rz=01\;31:\*.jpg=01\;35:\*.jpeg=01\;35:\*.gif=01\;35:\*.bmp=01\;35:\*.pbm=01\;35:\*.pgm=01\;35:\*.ppm=01\;35:\*.tga=01\;35:\*.xbm=01\;35:\*.xpm=01\;35:\*.tif=01\;35:\*.tiff=01\;35:\*.png=01\;35:\*.svg=01\;35:\*.svgz=01\;35:\*.mng=01\;35:\*.pcx=01\;35:\*.mov=01\;35:\*.mpg=01\;35:\*.mpeg=01\;35:\*.m2v=01\;35:\*.mkv=01\;35:\*.webm=01\;35:\*.ogm=01\;35:\*.mp4=01\;35:\*.m4v=01\;35:\*.mp4v=01\;35:\*.vob=01\;35:\*.qt=01\;35:\*.nuv=01\;35:\*.wmv=01\;35:\*.asf=01\;35:\*.rm=01\;35:\*.rmvb=01\;35:\*.flc=01\;35:\*.avi=01\;35:\*.fli=01\;35:\*.flv=01\;35:\*.gl=01\;35:\*.dl=01\;35:\*.xcf=01\;35:\*.xwd=01\;35:\*.yuv=01\;35:\*.cgm=01\;35:\*.emf=01\;35:\*.axv=01\;35:\*.anx=01\;35:\*.ogv=01\;35:\*.ogx=01\;35:\*.aac=00\;36:\*.au=00\;36:\*.flac=00\;36:\*.mid=00\;36:\*.midi=00\;36:\*.mka=00\;36:\*.mp3=00\;36:\*.mpc=00\;36:\*.ogg=00\;36:\*.ra=00\;36:\*.wav=00\;36:\*.axa=00\;36:\*.oga=00\;36:\*.spx=00\;36:\*.xspf=00\;36:; export LS_COLORS
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0; export XDG_SESSION_PATH
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0; export XDG_SEAT_PATH
SSH_AUTH_SOCK=/tmp/ssh-UytBrOmq2318/agent.2318; export SSH_AUTH_SOCK
DEFAULTS_PATH=/usr/share/gconf/fluxbox.default.path; export DEFAULTS_PATH
XDG_CONFIG_DIRS=/etc/xdg/xdg-fluxbox:/etc/xdg; export XDG_CONFIG_DIRS
DESKTOP_SESSION=fluxbox; export DESKTOP_SESSION
PATH=/home/ivanatora/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/ivanatora/bin/; export PATH
PWD=/home/ivanatora; export PWD
GNOME_KEYRING_PID=2307; export GNOME_KEYRING_PID
LANG=en_US.UTF-8; export LANG
MANDATORY_PATH=/usr/share/gconf/fluxbox.mandatory.path; export MANDATORY_PATH
UBUNTU_MENUPROXY=libappmenu.so; export UBUNTU_MENUPROXY
PS1=\\[\\033[1\;34m\\]\(\\t\)\\[\\033[0m\\][\\u@\\[\\033[1\;33m\\]\\w\\[\\033[0m\\]]\\\$\ ; export PS1
GDMSESSION=fluxbox; export GDMSESSION
SPEECHD_PORT=7560; export SPEECHD_PORT
COLORFGBG=15\;default; export COLORFGBG
HOME=/home/ivanatora; export HOME
SHLVL=2; export SHLVL
LOGNAME=ivanatora; export LOGNAME
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-rCyQHFVg4i,guid=31de69d47f7c412295741b5100000041; export DBUS_SESSION_BUS_ADDRESS
XDG_DATA_DIRS=/usr/share/fluxbox:/usr/local/share/:/usr/share/; export XDG_DATA_DIRS
LESSOPEN=\|\ /usr/bin/lesspipe\ %s; export LESSOPEN
BROWSER=firefox; export BROWSER
LESSCLOSE=/usr/bin/lesspipe\ %s\ %s; export LESSCLOSE
COLORTERM=rxvt-xpm; export COLORTERM
XAUTHORITY=/home/ivanatora/.Xauthority; export XAUTHORITY
cd /home/ivanatora || {
echo 'Execution directory inaccessible' >&2
exit 1
}
beep

 

Ау, уау, какво стана? Къде е задачата?

Задачата е най-отдолу, но за да стигне до нея `at` зарежда доста от променливите на обкръжението. Който е писал и дебъгвал крон задачи знае колко е досадно да разчиташ на определена променлива от средата, а тя да не е това което трябва...И въпреки всичкото това зареждане тук ни липсва една важна променлива, която ако сетнем ръчно ни отваря нови хоризонти. А именно - DISPLAY. По подразбиране дефаултния дисплей е ":0.0" и ако го използваме, може да стартираме задача, която работи с Х-а.

Една примерна грубa елементарна напомнянка:


(19:34:37)[ivanatora@~]$ at 19:36
warning: commands will be executed using /bin/sh
at> beep
at> DISPLAY=:0.0 xmessage "remember to eat dinner!"
at>
job 23 at Mon Mar 25 19:36:00 2013

Възможните формати за подаване на времето за стартиране е доста обширен и може да го видите в /usr/share/doc/at/timespec