2016-12-01 видео записи от OpenFest 2016

December 1st, 2016 by Vasil Kolev

Ето качените записи от OpenFest 2016. И тази година пак сме извадили музикалните изпълнения, за който се интересува:

Видео архив:
Първи ден, втори ден, пиано почивките.

youtube:

Общ playlist:
Общ playlist, technical track, advanced technical track, civic hacking, OpenBiz, social, education, music pauses, lightning talks.

2016-11-23 Интерком и телефони на OpenFest 2016

November 23rd, 2016 by Vasil Kolev

Интерком

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

На контролния лаптоп закачахме какъвто-и-да-е-микрофон (в случая – едни jabra headset-и, които бяха под ръка) и с ffmpeg ги бълвахме по multicast по мрежата:

ffmpeg  \
    -fflags nobuffer \
    -f alsa -i hw:0,0 \
    -acodec aac -tune zerolatency -ac 1 -b:a 128k \
    -f mpegts 'udp://227.0.9.1:9000?pkt_size=128'

Скриптът взима звукът от alsa-та от микрофона (в случая hw:0,0) и ги пуска на 227.0.9.1 с малък размер на пакета, за по-ниска латентност. Ако трябва да се пусне под windows, ‘-f alsa -i hw:0,0’ се сменя с нещо като ‘-f dshow -i audio="Microphone"’ (като "Microphone" трябва да се погледне как точно се казва, понеже windows-а странно кръщава нещата, Любо беше намерил как точно).

На няколкото raspberry pi-та до камерите се пускаше следния скрипт:

while /bin/true; do
ffmpeg  \
    -fflags nobuffer -probesize 32 -i \
'udp://227.0.9.1:9000?timeout=1000000&fifo_size=100&overrun_nonfatal=0' \
    -f alsa hw:0,0
done

Това слуша на multicast-а и play-ва каквото му дойде, като има timeout от 1 секунда без никакви данни, за да гръмне и да се рестартира. Така може да издържи на всякакви мрежови проблеми и в общи линии гарантира възстановяване до 1 секунда, след като се оправи мрежата.

Това като цяло е доста хакаво и сглобено в последния момент. При мрежата, която имахме, за догодина спокойно ffmpeg-а може да бъде заменен с един asterisk с конференция и телефони, които се закачат в нея, така включително ще можем да смъкнем още латентността (на този беше около 300-400ms) и да направим двупосочен интеркома (въпреки че хората не звучаха много въодушевени). Другото, което сравнително лесно трябва да може да се добави е noise reduction, понеже доколкото знам имаше някакъв, или от микрофона и усилването му, или от самите pi-та (като за второто няма да се оправим само софтуерно).

Телефони

Кодът е качен в github, и е съвсем съвсем тривиален:

  • С един php модул (phirehose) се дърпат tweet-ове по признак и се пишат във файлове;
  • Друг скрипт проверява на какъв език са, с espeak ги обръща в говор и ги дава на asterisk-а чрез call file да ги изговори на някого.

Цялото нещо отне чисто час-два да се напише и тества. Изглежда бая грозно (и може да седна да го оправя), но върши доста прилична работа и може да се използва като основа за всякакви подобни неща.

На самия OpenFest реализацията беше, че имаше наслагани 3 стари черни телефона на различни места, които бяха вързани през grandstream ATA устройства (понеже бяха единствените, които поддържаха импулсно набиране) и когато дойдеше tweet с #openfest2016telefon, asterisk-а звънеше на трите едновременно и който пръв вдигнеше го чуваше.

Архив на всичките неща, дето са казани по телефона може да се намери тук.

2016-11-22 Мрежата на OpenFest 2016

November 22nd, 2016 by Vasil Kolev

Нямахме голяма промяна от миналата година. Разликите бяха следните:

  • Тази година повечето switch-ове в опорната мрежа бяха tplink SG3210, имахме само 2 cisco-та. tplink-овете са по-тихи, по-малки, (буквално) железни и стават за странни deployment-и. Ако имаха и PoE, щяха да са направо невероятни.
  • Имахме още един switch, за NOC-а в мазето (който беше и единствения leaf в мрежата). Тази година стаичката за VOC беше оставена само на видео екипа, а мрежовия се ширеше в едно мазе.
  • Понеже имахме две зали за workshop-и, имахме малко повече user-ски switch-ове, в общи линии от кол и въже;

Ето тазгодишната схема.

С техника ни услужиха пак Светла от netissat (нейния switch вече 3-4 години е в опорната ни мрежа), Стефан Леков (noc switch-а и резервния сървър) и digger (два microtik-а за workshop switch-ове). Останалото беше от мен и initLab.

Голяма част от мрежовия setup беше организирана през github-ски issue-та, та лесно може да видите какво ни се е случвало по време на подготовката.

Тази година имаше повече наши "клиенти" на мрежата – интеркомът на залите беше по IP и имаше пръснати разни странни телефони, които бяха из мрежата. Като цяло wired мрежата не изглежда да се ползва от посетителите, но все повече се оказва полезна за нас.

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

Тази година преизползвахме кабелите от миналата година и взехме един резервен кашон кабел, та нямахме никакви проблеми с изграждането на мрежата.

За uplink тази година ползвахме същата оптика на NetX, но с гигабитови конвертори и 300mbps, та не усетихме никакъв проблем със свързаността.

Използвахме и същия DL380G5 за сървър/router, като тази година Леков пусна още един такъв като backup. Пак го използвахме да encode-ва 1080p stream-а от зала България, въпреки че май тая година нормалния ни encoder щеше да се справи (за една година софтуерът е понапреднал).

Тази година се наложи да променим номерата на VLAN-ите, понеже една част от AP-тата (едни големи linksys-и) не поддържаха VLAN tag-ове над 64. Съответно адресният ни план изглеждаше по следния начин:

IPv4

id  range           name
10  185.108.141.104/30  external
20  10.20.0.0/24        mgmt
21  10.21.0.0/22        wired
22  10.22.0.0/22        wireless
23  10.23.0.0/24        video
24  10.24.0.0/24        overflow

IPv6

10  2a01:b760:1:2::/120
21  2a01:b760:2:4::/62
22  2a01:b760:2:5::/62

По firewall-а и forced forwarding-а нямахме разлика – пак пуснахме proxy_arp_pvlan за потребителските VLAN-и, филтрирахме 25ти порт и не се допускаше трафик до management/video/overflow VLAN-ите от нормални потребители.

Имахме пълна IPv6 поддръжка в потребителските VLAN-и (wired и wireless), като тази година нямахме проблемът с изчезващият IPv6 за random хора – явно най-накрая странният bug е бил ремонтиран.

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

2016-11-21 VoctoMix на OpenFest

November 21st, 2016 by Vasil Kolev

Ситуация

За OpenFest имахме две кутии от тези от FOSDEM, които в общи линии ни даваха възможност да включим почти произволен източник на видео в тях и да го изкараме от мрежата. Те вървят в комплект от две – едната се използва, за да се включи в нея лектора, другата – за камерата. С тези две кутии и малко софтуерно видео миксиране може да се направи много лесно добър setup за видео запис на една зала.

Схемата на setup-а може да се види в github, като лесно може да се види, че е доста по-прост от другите, които използваме. Негов вариант мислим да използваме за FOSDEM 2017 (което може да се наблюдава в repo-тата в github – issue-та, wiki и всякакви работи).

VoctoMix

Липсващият компонент в цялата работа беше софтуерен миксер, който да ползваме. Пробвахме различни – първо един ffmpeg с малко patch-ове (чупи се твърде лесно), после OBS (който leak-ва памет като гламав и не е особено стабилен), и накрая се спряхме на voctomix, който е разработка на CCC и в общи линии е прекрасен хакерски инструмент, който работи по следния начин:

  • Има входове на TCP портове за следните неща:
    • Видео потоци (камери, лекторски лаптоп)
    • Поддържащи потоци (фон, какво да се пуска докато не сме live и т.н.)
    • Команди за разни действия (смяна на картина и т.н.)
  • Изходи, пак по TCP, за
    • Видео поток
    • Аудио поток
    • Копие на всеки входящ stream
    • preview на потоците и изходящата картина

Софтуерът в общи линии просто switch-ва между няколко неща (някоя картина на fullscreen, picture-in-picture в някакви варианти и т.н.) и вади поток, който може да се използва. Има отделно приложение (voctogui) което се закача към него и се използва като конзола – може да показва preview на потоците и да подава команди към основния процес (voctocore).

Как го използвахме

Излъчване от кутиите

Като за начало, изкарването на поток от кутиите става с ffmpeg/avconv, по UDP, по multicast. UDP, понеже е по-издръжливо на някакви random прекъсвания и няма да създаде десинхронизация, multicast, за да може да се гледа от повече от едно място (например за проверка какво точно излиза). Командата изглежда по следния начин:

# these are needed, because the default socket size is too small.
echo 81921024 > /proc/sys/net/core/wmem_max
echo 81921024 > /proc/sys/net/core/wmem_default

echo 81921024 > /proc/sys/net/core/rmem_max
echo 81921024 > /proc/sys/net/core/rmem_default

/usr/local/bin/bmd-streamer -f /usr/lib/firmware -k 1000 -S hdmi -F 0 | \
 ffmpeg -i - -c copy -f mpegts 'udp://227.0.0.1:9000&overrun_nonfatal=1&buffer_size=81921024&fifo_size=178481'

Интересното тук са параметрите на UDP stream-а – гигантски буфери (които и по-горе се казват на kernel-а), така че каквото и да се случва, да не се бави писането в буфера. Като цяло не е проблем да се губят пакети, но е доста лошо да се получава забавяне в целия stream, понеже води до десинхронизация. (да се губят пакети също е лошо, и за целта работя по нещо, което да вкарва forward error correction в тоя поток, един добър човек е написал patch за ffmpeg, реализиращ pro-mpeg, който има точно такава функционалност, надявам се да успеем да го ползваме на FOSDEM)

Приемане във voctomix

Самият voctocore приема потоците точно във видът, в който е конфигуриран (в нашия случай 1280×720, 30fps, audio в pcm_s16le на 44100hz), в MKV контейнер. За целта скриптовете, които го подават изглеждат ето така:

#/bin/sh
confdir="`dirname "$0"`/../"
. $confdir/default-config.sh
if [ -f $confdir/config.sh ]; then
    . $confdir/config.sh
fi


ffmpeg -y -nostdin \
    -i 'udp://227.0.0.1:9000&overrun_nonfatal=1&buffer_size=81921024&fifo_size=178481' \
    -ac 2 \
    -filter_complex "
        [0:v] scale=$WIDTH:$HEIGHT,fps=$FRAMERATE,setdar=16/9,setsar=1 [v] ;
        [0:a] aresample=$AUDIORATE [a]
    " \
    -map "[v]" -map "[a]" \
    -pix_fmt yuv420p \
    -c:v rawvideo \
    -c:a pcm_s16le \
    -f matroska \
    tcp://localhost:10000

Това в общи линии казва "вземи udp stream-а, scale-ни го до колкото искаме, сгъни пикселите и аспекта да са точно каквито ни трябват, и го прати като mkv на порт 10000". Сгъването на пикселите и аспекта (setsar, setdar) се налага основно когато не може да се промени изхода на камерата и идва в нещо странно като 1920×1088, което води до малко по-различна форма на пикселите.

За да работи цялото нещо, имаме два такива скрипта (по един за box), както и един подобен, който просто loop-ва едно PNG, което играе ролята на фон. В оригиналните скриптове хората са използвали видео за фон на picture-in-picture, но това е по-объркващо за гледащите и не го ползваме.

Излъчване и запис при voctomix

Излъчването и записът са в общи линии много подобни скриптове, като ще покажа само този, който праща до restreamer-а:

#/bin/sh
ffmpeg -y -nostdin \
    -i tcp://localhost:15000 \
    -threads:0 0 \
    -aspect 16:9 \
    -c:v libx264 \
    -maxrate:v:0 2000k -bufsize:v:0 8192k \
    -pix_fmt:0 yuv420p -profile:v:0 main -b:v 512k \
    -preset:v:0 ultrafast \
    \
    -ac 1 -c:a libfdk_aac -b:a 96k -ar 44100 \
    -map 0:v \
    -map 0:a -filter:a:0 pan=mono:c0=FL \
    -ac:a:2 2 \
    \
    -y -f flv rtmp://10.23.0.1:1935/st/STREAM

(скриптът е примерен, понеже доработвах след това нещата)

Като цяло, просто се взимат raw данните от порт 15000, encode-ват се до H.264 и се пращат до сървъра. По същият начин може да се обръщат във WEBM и засилват, но той иска много повече процесорно време и не сме стигнали до там, че да го ползваме.

Екстри за voctomix

Нещо, което не включихме на OpenFest, но ще има на FOSDEM е една дребна доработка, която позволява с много малко ресурси хора отдалечено да контролират voctomix-а. По принцип voctogui не е лек процес и има много сериозни мрежови изисквания, ако не се стартира локално (от порядъка на 1Gbps само за него), но позволява всякакви ужасяващи неща с малко дописване. С един прост скрипт, който прави screenshot веднъж в секунда, и съвсем прост друг, който подава команди ще имаме начин определени хора да имат контрол върху излъчването.

Също така нещо, което ползвахме донякъде на OpenFest за monitoring на stream-а е един друг скрипт с mpv, който взима списък URL-та и някакви имена към тях и ги пуска в отделни подредени един до друг прозорци на екрана, като за всеки overlay-ва един bar с нивото на звука, така че да може да се вижда дали е ок (понеже не е практически възможно да се слушат няколко зали едновременно). Проблемът му е, че се иска бая процесорно време, за да се декодират повечето потоци и един T420 с i7 процесор се озорваше с 6те потока от феста. Как изглеждаше екрана може да видите тук.

Опериране

Работата с voctomix не е сложна, но за момента пълна с неща, които имат да се свършат. Ето как изглежда (засега, работим по автоматизация) процесът на стартиране:

  • voctocore
  • voctogui
  • скриптове за приемане от камери (cam1.sh, grab.sh)
  • скрипт за генериране на фон
  • скрипт за stream-ване
  • запис (record.sh)

След което от voctogui при нужда се сменят различните картини. Като цяло е доста по-просто за разбиране от по-големите setup-и с конвертори и т.н., но и с по-малко функционалности.

Доколко добре работи?

Работи прекрасно, въпреки че се опитваме да открием един бъг с забавяне на audio-то, който се появява в някакъв момент. Започвам да си мисля, че има някакъв проблем със самия лаптоп, с който правим миксирането.

Какво още можем да искаме?

Хрумнаха ни няколко екстри, които да добавим, така че да стигнем функционалността на хардуерния setup:

  • Начин да излъчваме екрана за проектора от при нас. Това ще иска някаква доработка, за да смъкнем латентността на цялото нещо под 100ms, понеже иначе ще е доста забележимо (представете си как лектора прави нещо и проекторът се променя след 5 секунди). Единият от вариантите, който ни хрумна е проекторът да е вързан на едно pi и то директно да може да избира кой multicast да гледа (някоя камера, лаптопа на лектора или нещо трето).
  • Overlay надписи по време на лекцията – трябва да видим какво има да се пипне още, мисля, че има някаква такава функционалност (или може да ги сложим във фона).
  • По-добра синхронизация на различните потоци – ако работим с няколко камери, може да се окаже проблем, че едната върви с няколко кадъра след другата и трябва да си поиграем със забавяне.

Като цяло, аз съм много щастлив от voctomix и ако успея да убедя екипа, догодина можем много повече да ползваме него, отколкото чисто хардуерния setup (просто ще ни трябват мощни машини, за да се справят с encode-ването, че засега успяваме да работим само на 720p, без да подпалим лаптопа).

2016-11-10 OpenFest 2016

November 10th, 2016 by Vasil Kolev

“I ran. I ran until my muscles burned and my veins pumped battery acid. Then I ran some more.”
(екипът на OpenFest)
(оригиналът е от Fight club на Чък Паланюк)

И мина OpenFest 2016.

Няколко месеца подготовка, три дни лудница (първия – за setup на нещата), купища неща, които се счупиха и оправяхме в движение, проблеми с хора и техника, и всякакви забавления около това. Още не мога да си събера цялата глава, та ще карам накратко:

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

Второ, имам да пиша нови post-ове по следните забавни теми (или по-скоро да ръчкам хора да ги напишат): мрежа, wifi, monitoring, voctomix, интеркома, телефоните дето звъняха.

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

Четвърто, догодина още доброволци няма да ни се отразят зле. Ще има спам по темата в блога ми и вероятно по сайта на феста :)

И като финал, още обмислям как промяната на заглавието на блога ще ми се отрази на занимаването догодина. Детският кът, дето направихме тая година няма да може да се справя с чак толкова малки деца…
(разбира се, ако няма трета световна война и не се наложи да отложим OpenFest 2017, което като гледам новините може и да стане)

Гласуване за лекции за OpenFest 2016

October 10th, 2016 by Vasil Kolev

You all know the drill: vote.openfest.org.

Резултатът ни помага да подредим лекциите. Гласувайте, това поне е по-смислено от идващите избори (за които отказвам да пиша, не само защото ни ги набутаха на една от датите на феста)

Pieter Hintjens

October 9th, 2016 by Vasil Kolev

Изтървал съм, а снощи си мислех да пиша до FOSDEM да ги питам не искат ли да го поканят да говори за един последен път. Явно съм закъснял…

Не мисля, че мога да кажа много за него. Скоро научих за него, от един post на Meredith Patterson, и се зачетох в нещата, които е писал. Рядко ми се е случвало толкова да харесам как и какво пише някой, и за да не губя място, ще остава link-ове към няколко ценни негови неща:

Confessions of a necromancer, за различни негови софтуерни проекти;
A protocol for dying;
Scalable C (която май ще си остане недовършена);

… и изобщо повечето неща, които е писал.

Книгите му могат да се намерят по Amazon или разни други места online.

OpenFest 2016 call for volunteers

October 5th, 2016 by Vasil Kolev

И ако не сте чули, идва OpenFest 2016.

По случая се търсят още доброволци. От собствения си опит мога да кажа, че участието в организацията е толкова забавно, че човек чак има махмурлук след това :). Ако ви се занимава с най-голямото подобно събитие в България, запишете се в системата ни за целта. Имаме следните екипи, от които може да си изберете за участие.

Елате да се позабавляваме – миналата година екипът беше от около 60 човека и мисля, че никой от тях не съжаляваше за участието си :)

2016-09-25 SOTM ден 3

September 25th, 2016 by Vasil Kolev

И последен ден на SOTM.

Аз бях леко отнесен през половината ден, явно онова вчера е било хранително натравяне – през нощта имах някаква треска и сънувах как реконфигурирам fosdem-ски box-ове в огромни количества. Имаше разни проблеми, дето хванах твърде късно (например, че bmd-streamer с -B не може да слуша 1080p поток, което report-нах).

Освен това открихме, че за разлика от OBS, voctomix (от CCC) работи много много по-стабилно и вероятно ще използваме него за FOSDEM. Подкарахме даже един тестов stream за един час (като се възползвахме от multicast-натите stream-ове) и с малко занимавка би трябвало да го направим да работи за всичките 24 зали.

Следва прибиране утре, надявам се да не заспя някъде по летищата и да си изтърва полета.

2016-09-24 SOTM, ден 2

September 24th, 2016 by Vasil Kolev

Втория ден на SOTM мина.

Като изключим пожара в datacenter-а на университета и че за малко ни спряха и wired net-а, като цяло нещата бяха добре. Имахме малко проблеми с OBS, други с аудиото в голямата зала, но остана време хората от FOSDEM да вземат 3 ubuqiti access point-а и да пуснат wireless на хората от конференцията (които бяха много много щастливи).

Сериозно се замислям за някакъв подробен документ, в който да опишем как се прави техническата част на конференции – мрежа, аудио, видео и всякакви подобни неща, щото като гледам трупаме много интересен опит… Говорих си малко с Петко по темата, дали даже не можем да сглобим един прост за ползване image, който хората да наливат на определени типове устройства и да могат да си пускат добре wireless по конференциите.
(или да вземем да развием идеята с фирмата за организиране на такива неща)

In other news, нещо имаше гнило в обяда, щото доста от следобеда прекарах в тоалетните (поне тия на университета са поносими и имат тоалетна хартия). Надявам се до утре да съм се освестил…

2016-09-24 SOTM ден 1, със закъснение.

September 24th, 2016 by Vasil Kolev

Първият ден мина интересно …

Нещата си работеха, но имахме проблем с оригиналната конфигурация, понеже mistserver-а на кутиите от време на време умираше. В едната от почивките го смених с тъп pipe bmd-streamer -> ffmpeg -(udp)-> OBS и така нещата са доста по-ок, та се надявам тая сутрин да няма проблеми. Още се показва от време на време разлика в двата stream-а, което си мисля, че е бъг в OBS-а.

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

Явно целия свят има проблем с вентилацията, и тук в залите трудно се диша и вратите стоят отворени през цялото време (има огромни вентилационни отвори, и вентилацията, до която се добра работи, ама не изглежда да помага).

От интересните неща, разказваха за LIDAR устройства, с които човек може да ходи наоколо да си създава карта (дори триизмерна). Би било много полезно да си намерим такова нещо, да можем да си планираме по-удобно събитията.

А сега си върви втория ден. Почти нищо не се е счупило (освен wifi-то на университета, ама ние така и така не го ползваме), да видим как ще продължи деня :)

Update: не им работи wi-fi-то заради пожар в datacenter-а, и wired internet-а им падна един-два пъти.

2016-09-22 SOTM, ден 0

September 22nd, 2016 by Vasil Kolev

Най-накрая се стъмни.

В Брюксел съм, за State of the Map 2016 – правим с няколко човека от FOSDEM видео/аудио записа и streaming-а, като си тестваме различните опции за идващия FOSDEM. Случва се във свободния университет в Брюксел (VUB), в рамките на три дни.

Setup-а, който тестваме е да stream-ваме видео от FOSDEM-ските кутии до латопи, на които търкаляме OBS, който да миксира и праща нещата към youtube. Ако сработи добре (което май не е много вероятно, като гледам около тестовете как се държи), ще го ползваме в някакъв вид за FOSDEM, да вадим един stream вместо два, и дори да можем да превключваме между двете.

Та, трима човека подкарвахме и връзвахме нещата цял ден (от около 9 сутринта), което включваше:
– говорене с локалните хора да видим кой за какво отговаря (бая време);
– разтоварване на техниката (сравнима по обем с едно-заловите конференции, дето правим);
– разполагане на камери и железария напред назад, така че да не се скъса като се върти залата (аудитория QC реално се върти и става на едно с QA, изглежда доста странно);
– опъване на мрежови кабели м/у двете зали и тайно измъкване на някакви настройки за статично ip, че да можем да си подкараме някаква мрежа, понеже локалния мрежов екип беше зает да ни разкарва напред-назад;
– подкарвания на audio, слагане на ground lift-ове, издирване кой кои кабели де е вързал и как се настройват миксери;
– flash-ване на image-и за box-овете и подкарване на stream-а.

Още към 3 следобед ми се струваше, че навън трябва да е тъмна нощ. Обмислям да се обръсна и да спя, че утре изродите^Wхората почват от 8 сутринта (първата лекция е в 9).

In other news, движението в Брюксел е по-ужасно от това в София, тия хора не са нормални.

2016-08-17 java, unicode, emoji

August 17th, 2016 by Vasil Kolev

Чудех се дали да кръстя това “fuck you, Java”.

От някакво време гледаме проблеми с пращането на emoticon-и (ако не знаете, unicode стана пълен с всякакви лайна) – в някакви случаи се намазват, не пристигат вярно и т.н.. При нас през JNI стринговете се пращат до един C/C++ lib, от който всъщност излизат през мрежата от там, като по пътя има малко debug, който да каже какво излиза…

Седя аз и гледам как за намазващото се emoji по някаква причина получавам 6 байта от java-та, вместо 4 (което очаквам). 6-те байта ми изглеждат странно, не наподобяват UTF-8 (поне това, което аз знам), и след някакво четене откривам, че педе^Wпрекрасните хора от java под UTF-8 разбират modified UTF-8, или някакви неща като по-големите unicode символи се кодират така, че нищо друго не може да ги схване, освен друга java. Това обърква SMS центровете по пътя и всякакви други реализации и води до странни за дебъгване проблеми.

Разбира се, това се случва само с определени много много големи emoji-та, които ги има само на определени телефони в стандартните клавиатури, което па води до много фалшиви следи, като например “това са го строшили в android 5 при samsung”, “сървъра ги яде”, “космически излъчвания” и т.н..
(“клавиатурите” в android са софтуерни компоненти, дето явно всеки малоумен производител си пише сам)

Решението поне в нашия случай е в JNI-то да се превежда техния utf8 до нормалния. Ровейки се из интернета, намерих още подобни оплаквания, но явно не всички успяват да се ударят в това, понеже преди това се оказва, че например mysql-ската им база не ползва верния storage type, node.js-а им има само UCS2, който па хептен не може да ги събере и т.н..

Много хора просто казват “не ползвайте тия работи”. Сериозно ми се иска и за мен да беше опция…

2016-08-14

August 14th, 2016 by Vasil Kolev

Ужасно ми се спи, та накратко.

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

Случиха се БургасConf и ВарнаConf през седна седмица, като присъствах само на второто. На него се занимавах основно с FOSDEM-ския setup и откривам някакви неща, за които има да се пише сериозно код, който може да се окаже и донякъде в kernel-а, което изобщо не ме радва. Ще седна да си опиша по-подробно реализацията тия дни, може някой да може да даде интересни идеи.
(записи – тия дни)

Забравих да кажа, че има cfp за OpenFest 2016, submit-вайте, добри хора. Намирам за срамно, че още никой не е направил workshop за open source/hardware варене на ракия.

Syadminday

July 25th, 2016 by Vasil Kolev

Sysadmin day тая година се пада на 29ти юли (петък). Сбирка – “Кривото” на ъгъла на “Дондуков” и “Будапеща”, след 19:30, в мазето, запазил съм няколко маси.

2016-07-18 httpoxy

July 18th, 2016 by Vasil Kolev

Накратко, ново vulnerability, ако имате web сървър, дето проксира/праща до php, python, go (или вероятно и други неща, дето ги лови Proxy: header-а), минете и си пипнете конфигурацията на web сървърите.

OpenFest 2016 иде

July 9th, 2016 by Vasil Kolev

От хубавите новини – официално ще има OpenFest 2016, ето официалната новина.
(зала “България”, 5-6 ноември, вход свободен и т.н. и т.н.)

Съвсем скоро ще пуснем и CfP-то. Ако имате интересни идеи за лектори, които да поканим, пишете на program@openfest.org (най-вече ако имате и контакт с тях и са сравнително наблизо).

За който е изпуснал миналата година, записи има в нашия архив и youtube.

2016-07-06 Brexit

July 6th, 2016 by Vasil Kolev

Та, Brexit. Не мога да спя и пия немско уиски, но обещавам да няма политическо влияние от него.

Първоначалната ми идея беше да си излея целия ужас и отвращение от случилото се (как за пореден път страх и лъжа вършат страхотна работа), ама това е стара история и не е особено интересно. Доста по-интересно е КАК се случват нещата.

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

Следях нещата първо през блога на Чарли Строс. Той ми стана интересен по темите първо като говори за шотландския референдум, последствията от него и разни обяснения по темата, но около brexit написа още няколко интересни неща, които си струва да се погледнат, и които директно могат да се видят из последните му post-ове.

Около това седнах да гледам twitter, и около това – live coverage-а в The Guardian. Да се види какво става отне минимално време (трусовете, неподготвеността, може би само “кой направи много пари от цялата работа” не е съвсем ясно все още, ама това се показва по-късно).

Та, британците яко са го закъсали. Даже не закъсали, ами са като кокошка без глава в торна яма, още се опитват да си намерят главата и да решат какво да правят, щото никой не искаше това да се случи, с някакви изключения, които па очакваха някой друг да знае какво да прави. В момента целия им civil service си е събрал усилията да измисли спасение, и вероятно даже report-а за войната в Ирак и тяхното участие, който трябва да излезе утре няма да докара кой-знае какви проблеми.
(но със сигурност ще е интересен за четене, особено по темата какво са успели да изрежат от него)

Далеч по-интересно е обаче да четем неща, свързани с нашата политика и да сравняваме. Може би не точно по-интересно, но МНОГО образователно…

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

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

От друга страна, тия дни гледах сайта на Нова Зеландия за емигриране и е доста добре направен.

2016-06-26 Лекцията ми от ПловдивConf, “ХУДЛ: една полезна дрога”

June 26th, 2016 by Vasil Kolev

(колебаех се дали да пиша за brexit или за лекцията ми, но някакси човешката глупост трябва да стои на по-заден план от полезните неща)

Докато четях “The view from the cheap seats” на Нийл Геймън, ми хрумна да направя тая лекция. Може да гледате слайдовете, докато я четете, но да знаете, че няма нито една картинка. Опитал съм се да следвам донякъде каквото говорих на самата презентация.
(добавих нещо интересно към генератора ми на презентациите, epub версия, която може да се гледа на някакъв reader вместо бележки)

ХУДЛ: една полезна дрога
———————–

Добрутро, добри хора.

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

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

Темата е художествената литература.
(брех, никой не избяга. Може би защото всички спят?)

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

Защо ви го разказвам аз? Понеже няма много други хора, които да се хванат да го правят – има разни инициативи, насочени към обществото, като “аз чета” и не-помня-какви-други, но те са много широки и се мотаят често по медии, на които никой не вярва. Аз ще се опитам да направя лекция, насочена поне донякъде към IT хората, с надеждата да има някакъв ефект (не само да не влезем в затвора :) ). Също така, на мен литературата ми е помогнала много и искам да го споделя и с вас, понеже мисля, че не трябва да съм един от малкото облагодетелствани :)

Има неща, за които няма да говоря. Ще пропусна всичкият non-fiction (който в момента може би е половината от това, което чета) – техническа, историческа и всякаква научна литература – там има също шедьоври и полезни неща, но те изискват по-скоро цикъл лекции (например “на какво може да ни научи историческата литература”, “технически книги, написани добре” или “основен курс по политика и защо ни е”). Иска ми се да говоря и за комиксите, но те заслужават съвсем отделна лекция, и също така ще пропусна книгите-игри, понеже имам твърде малък досег с тях.

И нека да започна с това защо книгите и художествената литература по-специално имат са полезни за нас.

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

По-лек вариант на това е просто да се озовете в друг свят, който да ви помогне да си промените представите. Има различни начини:

Може да гледате филми. Те обаче са кратки, нямат достатъчно история, филмите над два часа не се получават, а в два часа никаква история не може да се събере.
Също така, няма достатъчно, няма достатъчно материал – единствено порно-индустрията произвежда достатъчно материал (май беше 4 часа за всеки час реално време), но там историите куцат и твърде бързо омръзва.
Филмите вдигат и шум – все някой говори и трябва да се слуша, а и дори да сте фенове на нямото кино, там пак има soundtrack, който си е част от историята. Това прави цялото нещо не-толкова-социално, щото не могат трима човека да гледат три филма в една стая, няма как да се получи. Някои хора, на които си изнасях преди това лекцията казаха, че това е само мой проблем, но не мога да го пропусна.
И най-вече, в наше време всички филми са ужасно клиширани.

Друг вариант са сериалите (всъщност аз даже гледам сериали). Те имат предимството, че са по-дълги и могат да съберат една книга както трябва, да изградят историята и героите както трябва, и даже могат в общи линии да предадат една книга – примерът е как Game of thrones се получава (на филм нямаше как да стане), и поне според мен Властелинът на пръстените щеше да е много по-добре на сериал, отколкото на 10 часа филми.
Проблем е пак, че няма достатъчно материал – освен, че няма порно сериали, по принцип производството им е бавно и тежко. Въобще, всичко кинематографично иска много по-голям ресурс.
Също така, и двете не оставят време за мислене. И филмите, и сериалите се движат със собствено темпо, което не ви дава възможност да спрете и да помислите, да предъвчете информацията. Също така трудно може да се избърза – например наскоро гледах сериал, на който първия сезон беше зле, втория ставаше и третия беше невероятен, но нямаше как да мина бързо през първия, понеже не е само пълнеж, но и setup на историята, който си е важен. Може би просто няма решение на тоя проблем…
Пак вдигат шум, и пак са ужасно клиширани. Всеки път, като гледаш нещо в общи линии е ясно какво ще се случи, просто защото пътеките са утъпкани и никой не смее да излезе извън тях (с много малко изключения, като например Black Mirror).

Имаме и резервен вариант – алкохол и/или халюциногени, които могат да са супер ефективни (към публиката: да, наздраве, и се надявам да е алкохол, не халюциноген, че не е ясно какво ще виждаш), но са вредни за черния дроб (и не само), и като цяло са твърде опасни.
(вероятно трябва да направим една лекция за различните вещества и въздействието им, но май няма да е моя такава. Но, ако видите из турнето лекция, която се казва “бензин”, ще е за нещо такова, щото човекът е пил бензин, и се надявам да го навия)

А книгите…
Книгите са огромно количество. Да прочетете 1 GB чист текст ви трябват 20на години (сметката е, че 1 страница е около 4kb, което прави ~250000 страници, дори при моя темп на четене са 5 години). Само в проекта Гутенберг има 21GB книги (проектът, който събира книгите с изтекли авторски права), да не говорим за количеството други архиви, като например libgen (където има около 10 милиона книги). Според една сметка на google до 2010 е имало 129 милиона книги, които няма как да бъдат прочетени от един човек, дори един процент е непосилно число. Аз, с много желание, за целия си живот има шанс да прочета най-много 10000 книги, ако се старая много.
Книги може да четете навсякъде, без да пречите на хората (с изключение на случаите, в които четете докато някакви хора ви обръщат внимание).
Разнообразието на идеи в книги е най-голямото съществуващо – всички идеи тръгват от някакви книги или ги има в такива, и има нещо като правило 34 на internet-а (което гласи, че ако има нещо, то има порно с него) – ако нещо съществува, то има книга по темата. При 129 милиона книги не е трудно.
Има и формати, които работят без ток – има хартиени книги, работят без ток, само със светлина (даже не е задължително да е слънчева), не им трябва даже internet. Предполагам, все още сте виждали такива напред-назад, ако ще да е само да си подпирате монитора :)
И книгите са най-близкото нещо, което имаме до телепатия. Малко по-нататък ще ви го покажа :)

Книгите ни дават нова информация и перспективи. Никой от нас не знае всичко.
Авторите постоянно си задават въпроси от типа на “ако продължава така” (бежанската криза), “какво щеше да стане, ако…” (хората развият свръхестествени способности), пробват да намерят отговори, и с това ви карат и вие да си задавате същите въпроси и да стигате до някакви отговори, или да оспорвате техните. Като цяло, ви карат да мислите, а съм чувал (е, или съм чел някъде), че да мислиш е полезно. Не знам някой да го е доказал, та ще го оставя като аксиома :)

Развива важното за нас въображение. Ето един цитат:
‘Oh, you know for years we’ve been making wonderful things. We make your iPods. We make phones. We make them better than anybody else, but we don’t come up with any of these ideas. You bring us things and then we make them. So we went on a tour of America talking to people at Microsoft, at Google, at Apple, and we asked them a lot of questions about themselves, just the people working there. And we discovered that they all read science fiction when they were teenagers. So we think maybe it’s a good thing.’

Идва от първата организирана от държава (Китай) конференция за фантастика. Събрали там разни писатели и свързани хора, и Нийл Геймън, който бил там попитал местен партиец – защо правят такова нещо, никъде другаде не бил виждал нещо подобно. Отговорът е цитатът по-горе, че колкото и да са добри китайците в копирането или правенето на техника, нищо от това, което правят не е измислено там. Та, някакви хора отишли, разпитвали всякакви работещи из Силициевата долина и общото, което намерили било четенето на фантастика в ранна възраст. Та, може би е нещо хубаво?
Предположението е, че това развива (важното за нас) въображение.

Също така, от книгите могат да дойдат много нови идеи и насоки (за което имам три пълни слайда):

Фантастика с вампири в космоса ме накара да седна и прочета много неща по темата за човешкото съзнание, мислене, свободната воля и свързаните теми. Беше доста странно, понеже попаднах на нея от thread в един блог, където се питаше за наистина важна книга от последните 10 години, и там много хора казваха – тази книга е страхотна, не се плашете от вампирите. Ще я спомена даже по-нататък пак.

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

“Дзен и изкуството да поддържаш мотоциклет” (странно заглавие, доста стара книга) е книгата, заради която спрях да пиша оценки, вътре има глава, която обяснява много добре защо.

“Fight club” и темата за консумеризма – книгата е прилично по-добра от филма (въпреки че филмът много се старае).

Dead air на Iain Banks и как се бори човек с идиоти е също доста забавна.

И да, наистина представата ми за армията и казармата отвътре все още се базират на “Приключенията на добрия войник Швейк” на Ярослав Хашек. На мен казармата ми се размина, но си мисля, че нямаше много да ми мръдне представата…

“Little brother” и “Homeland” на Кори Доктороу дадоха интересни идеи за следващите протести (каквато е и целта им, те са не толкова книги, колкото наръчници).

“Махалото на Фуко” и “Пражкото гробище” на Умберто Еко са може би най-закопаващите книги за конспиративните теории.

“Сатанински строфи” на Салман Рушди ме накара да се ровя повече в Исляма и да се опитам да разбера какъв точно им е проблема на тия хора с книгата.

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

Крайтън и Хейли са ме карали да се интересувам от инфраструктурата на всичко – заводи, летища, болници…

Като пример не за мен – Артър Кларк е измислил комуникационните спътници.

И всякакви други неща, които не ми е преписват от слайда :)

Разбира се, може да четем просто за удоволствие. Спомням си как първата книга, която наистина ми хареса (“Откраднатата баба” на Атанас Мочуров – не помнех автора, ама я издирих по заглавието) съм я чел 39 пъти, просто щото ми харесваше. Идея си нямам защо съм ги броил, но мисля, че в един момент я знаех почти на изуст (трябва да съм бил на 6-7-8 години).
Спомням си една такава случка, като беше излязла “Нощната стража” на Тери Пратчет, със съквартиранта си я бяхме взели и вечерта като се прибрахме, седнахме да четем, всеки в неговата стая. По едно време аз свърших книгата, погледнах навън и без да се усетя, казах на глас “Брех, то се е съмнало!”. От другата стая чух “А, вярно бе!”…

Дори самият език може да достави огромно удоволствие. Ето малко цитати:
(дължа бира на Андрей, щото се сети от къде са няколко от тях)

“И наистина, бай Ганьо разлюти супата си до такваз степен, щото един непривикнал човек би се отровил.”
Тоя цитат винаги си го спомням, като ям шкембе чорба.

“The house had four windows set in the front of a size and proportion which more or less exactly failed to please the eye.”
(“Пътеводител на галактическия стопаджия”)

“Отдавна умряла проститутка гонеше съвсем жив мъж през тълпата и си искаше отдавна дължими пари за минала услуга.”
(Стивън Ериксън, една от книгите за Корбал Броуч и Бочалайн.

“What is a flower? A giant sexual organ in its Sunday best. The truth has been known for a long time, yet, over-aged adolescents that we are, we persist in speaking sentimental drives about the delicacy of flowers. We construct idiotic phrases like “So-and-so is in the flower of his youth”, which is as absurd as saying “in the vagina of his youth””
(Амели Нотомб, “Любовен саботаж”)

“Икономиката е псевдонауката, която разглежда илюзорните отношения на субектите от първи и втори род във връзка с халюцинаторния процес на тяхното въображаемо забогатяване.”
(Виктор Пелевин, “Generation П”, любим цитат ми е да го казвам на икономисти. Доста близък до реалността, донякъде чак притеснителен как една измислица движи голяма част от обществото)

“Political language is designed to make lies sound truthful and murder respectable, and to give an appearance of solidity to pure wind.”
(Оруел, разбира се)

“Some humans would do anything to see if it was possible to do it. If you put a large switch in some cave somewhere, with a sign on it saying ‘End-of-the-World Switch. PLEASE DO NOT TOUCH’, the paint wouldn’t even have time to dry.”
(Пратчет)

Честно казано, бих могъл да направя презентация само от цитати и пак да звучи добре, но ще е малко нечестно :)

Разбира се, чувал съм и доста оплаквания. Можем да започнем с “ама това не ли бягство от реалността”, и ще отговоря пак с цитат (който е цитат от някой друг): “C. S. Lewis wisely pointed out that the only people who inveigh against escape tend to be jailers.” (Нийл Геймън). Интересно, че като човек чете (non-fiction) книги за правилата по разни тоталитарни лагери и затвори (съветските са един много добър пример), там всякакви такива неща като личен живот и бягане от реалността са максимално забранени (има един особено добър пример в румънските “превъзпитателни” лагери), като успяват да потрошат психически сериозна част от хората. Да се чуди човек Оруел без да е бил там как толкова добре ги е описал…

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

Чувал съм хора да казват, че книгите са им скучни. Това значи, че четат грешните книги – при толкова много съществуващи не е особено възможно да няма нищо интересно. Има всякакви странни неща, включително преди няколко години някой написа “Гордост и предразсъдъци със зомбита”…

А защо това подзаглавие, къде е дрогата? Пробвайте :) Става ясно много бързо, нуждата да разберете какво става, да се нарадвате на езика, на идеите… Доколкото знам, хората се лекуват от желанието си за четене чрез умиране (за разлика от опиатите, където поне има програми и институции да помогнат). Винаги има желанието да се намери още нещо такова, толкова интересно и забавно (а защо не и повече?). В статистиката на goodreads (които са не-чак-толкова-голяма социална мрежа) за миналата година в reading challenge има 1,722,620 участника и 29,258,154 прочетени книги. Забавното е, че аз, дето чета по около 100 книги годишно, не влизам даже в топ 20-30%, щото има хора, дето четат по 900…

“Какво да четем” е доста често срещан въпрос. Правилният отговор (и най-лесният) е “каквото ви хареса”. Никой друг няма как да знае какво ще ви хареса, та каквото хванете и ви е забавно – четете го :) Дал съм по-долу малко идеи, но моят вкус може сериозно да се различава от вашия. Това не е проблем, щото, както казах по-горе – 129 милиона…
(започвам с цитат от книгата, с > отпред)

> “Истината е, че откакто ме назначиха в тоалетните на четирийсет и четвъртия етаж, ходенето по нужда се бе превърнало в политически акт.”
“Изумление и трепет” на Амели Нотомб е кратко, забавно, леко странно (както повечето ѝ книги) и се чете бързо и с удоволствие. Започвам с него, преди да продължа с тухлите.

> – How long do you want these messages to remain secret?[…]
> – I want them to remain secret for as long as men are capable of evil.
“Cryptonomicon”-а на Нийл Стивънсън мисля, че съм споменавал и преди – в книжните си лекции в initLab и в кило други post-ове. Криптография, валути, втората световна война, модерните крипто-пънкове, Алан Тюринг, и просто радост за душата. За всички, на които е харесала Стивънсън е написал Бароковия цикъл, който е три такива тухли в края си има спор между Нютон и Лайбниц на темата за свободната воля. От нея може да ви станат интересни много неща.

> ‘And what would humans be without love?’
> RARE, said Death.
Чудех се и не можах да избера една книга на Тери Пратчет, за това препоръчвам целия. Имаше проблем с част от преводите му, в оригинал е прекрасен, пробвайте го.

> “Bill could smell Its breath and it was a smell like exploded animals lying on the highway at midnight.”
Стивън Кинг е човекът с телепатията. В книгите му е пълно с такива изречения, които в един момент започвате да си представяте. Има хора, които твърдят, че не е сериозен писател, понеже пише там някакви си популярни ужаси, но истината е, че той е един от наистина големите майстори на езика и на това да бръкне някъде във вас. Може би и буквално :) От него препоръчвам като за начало “Мъртвата зона”, “То”, “Зеления път”, или каквото изобщо си харесате. Има много филми по него, и сполучливите са точно защото са успели да предадат телепатията достатъчно добре на екрана.

> “This is how you communicate with a fellow intelligence: You hurt it, you keep on hurting it, until you can distinguish the speech from the screams.”
Blindsight на Peter Watts (“Слепоглед” на български, не съм гледал как е превода) е книгата с вампирите в космоса и една от най-издържаните научно фантастики, на които съм попадал. Авторът е океански биолог, работил по специалността си 10на години, публикувал и т.н., и решил в един момент да мине към фантастиката. Това е първа книга от втората му поредица, и това беше много замисляща книга, в която намерих и много от неща по темата за изкуствения интелект, които преди това бях виждал в “Новият разум на царя” на Роджър Пенроуз (математик, книгата е научно-популярна на темата докъде може да стигне изкуствения интелект, с прилично количество математика).
А за вампирите обяснението е, че те са вътрешно-видов хищник, който се храни с хора, има много добро зрение, и е изчезнал когато хората са започнали да строят къщи, понеже ако вампир види прав ъгъл, му се задействат едновременно твърде много от зрителните рецептори, получава се претоварване и нещо близко до припадък. За останалото препоръчвам да хванете книгата :)

> “Governments always commit their entire populations when the demands grow heavy enough. By their passive acceptance, these populations become accessories to whatever is done in their name.”
“Експериментът Досейди” на Франк Хърбърт. Повечето хора знаят за “Дюн”, но това също си заслужава да се прочете, поне като идея за посоката, в която може да тръгне дадено общество под натиск (и която може да отговори защо хората от много потиснати общества успяват да “hack”-нат тези от по-свободните, на по-прост език защо престъпността в Европа след 1989 е осново от източно-европейски произход).

> “We are a wretched, petty species, and we have been given power to destroy ourselves with.”
“Worm” на Wildbow е интересен случай. Ако не беше толкова добро, и толкова трудно за оставяне, не знам дали нямаше да застрелям човека, който ми я препоръча – книгата е около 5000 страници, и не дава възможност да я оставиш. И докато с други книги това е в общи линии да не се спи една нощ, тук това беше две седмици непрестанно четене до ранните часове. Може да се намери online на url-то, и я препоръчвам на всички, не само защото искам и други хора да преживеят същото нещо :) Може просто да я започнете, то не е нужно много…

Имаше няколко въпроса след лекцията:
Функциониращ адрес на libgen – не се намира трудно, има един, завършващ на .rus.ec….
Техники за бързо четене дали използвам – мисля, че само една, че не субвокализирам (т.е. не си произнасям на ум думите), но не помня как съм го научил, случи се във ваканцията ми между първи и втори клас, просто започнах да чета по-бързо. Има някакви начини и доста информация по темата, може да е полезно да се пробва. Скоростта на четене много зависи и от количеството информация, има неща (като фентъзита), които могат да се четат много по-бързо, понеже просто информацията вътре не е толкова много.
Ако до края на живота си съм принуден да избера една книга, която да препрочитам, коя ще е – никаква идея. Мислих, мислих, но ще трябва да е нещо много по-дебело от Worm …
Минавало ли ми е през ума да пиша някаква книга – аз не пиша особено добре, а и това иска доста време и спокойствие, които нямам. Доколкото знам, е нужно да напишеш около милион думи текстове, за да свикнеш да пишеш добре, не знам дали съм стигнал до там. Иначе, многото четене е изискване за доброто писане, но не е достатъчно.

2016-06-24 радио-link

June 24th, 2016 by Vasil Kolev

(blog post за разсейване)

Пешо (който организира uzana.io) си взе няколко ubiquiti airmax-а, с които да си пусне net (като разстоянието, което има да покрие е около 12км). За да им направим истински тест, решихме да ги вържем от у нас (Лозенец, близо до водната кула) до у тях (Костинброд), което е около 18км.

Лъчът се оказа достатъчно широк, че да не трябва ултра-точно насочване, и резултатът може да се види в един smokeping, който пуснах да дебне. Има едно прекъсване при донастройване първия ден на вертикалата от Костинбродската страна. Като цяло нощно време загубите са малко, през деня обаче има бая зашумяване по пътя – например НДК е точно по правата линия и техния wifi се чува бая добре с тия антени…
(тия антени чуват наистина много добре, май мога да слушам wifi-та на няколко километра с тях)

Може да се види снимка на гледката от моя покрив. Да, знаем, че сме го закачили на гръмоотвода.

След упражнението се оказа, че аз имам root на router-а на Пешо, та първо най-накрая си подкарах bgp за моя ipv6 вкъщи, после подкарах при него, и накрая ги interconnect-нах през радиовръзката. Сега ако ми спре net-a вкъщи, ще имам поне ipv6 през Костинброд. Наливам пълна таблица и на двете места, сложил съм local preference на пътищата от него да е по-малък (и по същия начин на двата router-а от другата страна моя prefix през неговия link е с по-малък localpref), като цяло съвсем стандартен setup :)

Мога спокойно да кажа, че вкъщи свързаността ми вече е географски подсигурена.