Българска клавиатура за FirefoxOS

От следващата версия на FirefoxOS вече ще има българска клавиатура. Даже 3 🙂
Screenshot from 2013-11-30 21:56:34
Ще са налични БДС, нормална фонетична и другата фонетична (която на места пишат като БАН)

Не можах да измисля по-къси имена, затова името на нормалната фонетична подредба не се вижда изцяло в списъка.

Ден на Роботиката в ТУ-Варна

946049_10202657880275003_120161569_nИ тази година готините хора от клуб “Роботика и мехатроника” организират ден на роботиката в университета.
Ще се състои на 6-ти декември като част от седмицата на роботиката.

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

Още пише на страницата на клуба.
Има и facebook event.

6 години

Миналия месец това място стана на 6 години.
Изобщо не можах да ги усетя кога се изнизаха. Направо не ми се вярва колко глупости съм изписал за това време.

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

Mozilla Summit 2013

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

В началото на месеца се проведе Mozilla Summit 2013.
Summit-а е събитие, на което всички мозилианци се събират да се видят и да си поговорят интересни неща.
Тази година беше много по-голямо от последното и се състоя (почти) едновременно на три места – в Брюксел, Санта Клара и Торонто. В Брюксел бяхме повече от 600 човека (някой спомена 625). Общо около 1800 души на трите места.
Организацията започна още от април. Досега не съм виждал по-организирано събитие.

Набързо и разбъркано. Каквото е останало.

Стигането до летището беше зор. Сутринта трябваше да стана в 6, за да отида до университета, после трябваше да карам до Търново. От там с автобус до София и към 3 сутринта стигнах. Прескачам частта, в която таксиджията ме излъга (долни боклуци са някои), щото ми омръзна да я разправям.
На летището се запознах с Павел. Оказа се, че българската общност на Mozilla е по-голяма, отколкото си мислех.
Хвърченето мина добре. На летището в Брюксел ни чакаха с автобуси и ни разкараха по хотелите.
Този ден беше предназначен за свободни разхождания из града и запознаване синтересни хора. Прекарах го в спане.

Всички събития бяха в The Square, който беше декориран така през цялото време:
2013-10-03 17.56.50
Вечерта имаше вечеря (no shit), където се запознах с един тон хора, от които не помня почти никого. Видях и доста познати от Balkans Meet Up-а.
Запознах се с Любо и най-накрая наживо с Оги.
След вечерята имаше бири.

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

От някои session-и доста сериозно се запалих по FirefoxOS. Благодарение на Любо в момента имам възможност да си играя с един device, ама за това – после.
Друго нещо, по което се запалих, е Rust. Mozilla правят доста интересни неща с това.
Бях на един session за WebRTC. И там се заформят доста интересни неща за близкото бъдеще. Смятам да го използвам като започна да си играя по-сериозно с платката.

Пих Пелинковац. Доста интересно нещо – алкохол с една камара билки. Едната вечер тъкмо излизахме от Square-а и един ни спря с “Hey, you guys want some cheese?”. Бяха хърватските мозилианци. Имаха най-якото сирене и Pelinkovac. Забавни хора.

На едната вечеря нямаше алкохол. Резултатът е това:

Извън мозилските неща:
Брюксел ми хареса. Има интересна архитектура и тесни улици. Доста неща са запазени.
На третия ден (неделя) исках да се прибера до хотела в обедната почивка, но хванах някакъв маратон. Бяха заградили всички улици, чрез които можех да стигна до хотела. Срещнах едни приятни хора от Mozilla Taiwan, които също искаха да се приберат. Полицаите казаха, че щели да отворят “след около 2 часа”. Имаше гнусни гледки, но стегнатите девойчета компенсираха. Изчакахме да се поразредят и пресякохме. Едната от каките ни напсува или поне така звучеше.

Видях пикаещото момченце. И пикаещото момиченце. Големи атракции.

На връщане на брюкселското летище се случи това:
2013-10-07 07.36.24

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

A13-OLinuXino-MICRO

A13-microМиналия месец спечелих Free Board Giveaway играта (цели два пъти!) на Olimex и наградата ми беше тяхното A13-OLinuXino-MICRO, което освен че е супер яко, е и open source hardware.

Подкарването се оказа голям зор, защото, както обикновено, при мен нищо не тръгва от първия път.
Първо си купих минималните неща, нужни за подкарването – карта с image, захранване и USB LAN карта. Поръчах си нещата в сряда, в петък вече бяха при мен. Дотук добре. Днес отидох да си купя останалите неща за подкарването – VGA кабел, клавиатура и USB хъб, защото платката има само един USB порт (ако не броим OTG-то), а искам да ѝ вкарам доста неща 🙂
Та, прибирам се щастлив, че няма да спя заради нещата, които ще причиня на платката, връзвам всичко (като параноично гледам да не съм статично зареден) и… нищо!  Проблемът е, че не очаквах да boot-ва толкова време. Стори ми се “толкова време”, защото не се виждаха съобщенията, докато се пускаше ядрото. Важното е, че се пусна и видях login екрана. От тук започна забавата – бях вързал клавиатурата и LAN картата през хъба, но не светваха. Пробвах и през нормалното USB, но пак нищо. На login prompt-а не можех да пиша нищо. Long story short – след ровене по форуми и обикаляне по разни магазини клавиатурата тръгна през USB-OTG порта. Оттам нататък всичко беше лесно – build-essential, automake, ssh, nginx, python, etc, etc.

В момента се намира на http://sexy.chilyashev.com (screenshot, да не забравя как изглежда, ако я счупя утре), а от тук може да се види дали е пусната. Не знам дали ще продължа да си пиша TODO-то там или ще напиша/инсталирам по-яко нещо да следя какво мисля да правя. Засега остава това. Досега не бях цитирал себе си.

Днес подкарах само най-елементарния пример за GPIO, но мисля да си купя 40-пинов кабел и да започна да си играя по-сериозно с GPIO-то. Като за начало ще видя дали могат да се четат аналогови данни и ако не може, ще сложа АЦП на входа. След това – серво моторчета, интелекти, механика и завладяване на света щракащи релета. Като се наиграя с мигащите диоди и щракащи релета, ще разгледам UEXT нещата. Някъде по средата на това ще си поиграя с UART-а.

Ако всичките периферни играчки тръгнат както искам, ще взема някой от touch screen дисплеите, ще нарисувам някакъв интерфейс и цялото нещо отива в колата, откъдето идват още по-яките периферии – датчици за обороти, температура, скорост, връзка с телефоните, камери отпред и отзад и всякакви яки неща 🙂
С това изникват други интересни проблеми:

  • как ще предпазя устройствата от рязкия спад на напрежението, когато паля, ще бъде ли включено изобщо нещото преди да съм запалил?
  • Колко умен ще е датчикът, който проверява дали съм запалил – “от генератора идва ток => колата е запалена” или нещо по-хитро?
  • Къде ще навра нещото – ще изрежа цялата централна част или ще мисля грозна стойка? Или пък ще разкарам таблото?
  • Колко ще е голям дисплея? 10″, 7″, 4.3″? Portrait/Landscape?
  • Ще вържа ли 1KW усилвател за него?
  • Ако сложа камери, върху какво ще записват?
  • Ще може ли тази малка платка да понесе всичките неща?

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

Отивам да спя.

Наваксване

През 2011 зарязах 90% от интересните неща, с които се занимавах, за да мога да си взема матурите с приемливи оценки и да вляза да уча някъде. Е, успях, но още не мога да вляза в ритъм с всичките странични глупости, които се навъдиха около университета.
Вече почти три месеца след края на семестъра и имам достатъчно свободно време след работа да наваксвам с нещата, които зарязах заради училището.

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

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

Извън якостите на Java-та се занимавам с две-три неща на PHP – пренаписвам един сайт, около който се заформя подобие на framework. Поиграх си и с API-то на Last.fm, навъдиха се интересни идеи за следене на някои статистики.

Отново се обърнах към Ruby с Ruby on Rails. Оказа се по-лесно и интересно, отколкото го помня. Освен с Ruby около Rails се забавлявам и с CoffeeScript и Sass, скоро и Haml.

Остава ми да започна пак да свиря и всичко ще ми е наред 🙂

Около редовното ми писане тук ми дойде идея за WordPress plug-in – колкото повече време минава от последнатото постнато нещо, толкова по “прашасала” става темата на блога. Или ще се случва нещо друго. Не знам.

Хубаво е като не те занимават с глупости.

barcodes

В сесия съм и се оказа, че трябва да уча за изпит, който си мислех, че съм освободил.
Та понеже имам да чета доста, реших да си напиша библиотека за генериране на баркодове. В момента не прави нищо особено – може да генерира само Code 128. Като се има предвид колко време отделих за това, не мисля, че е толкова зле.
Качих нещото в GitHub – цък.
Даже телефонът го разпознава.
Мисля като ми минат изпитите да си поиграя още и като свърша с 1D баркодовете, да мина на матрици и после QR.
След това мисля да го пренапиша на Java и да обуча някоя програма да ги разпознава.
Само да минат изпитите.

2013-04-24

В блок 18 на общежитията на ТУ-то има (имитация на) интернет, за който са нужни име и парола да се ползва. Дотук добре, обаче… Маймуните, които са го настройвали, са решили да ограничат достъпа на хората до някои неща (торенти например) и са сложили някакви правила на MikroTik-а, който пуска интернета. Пак добре, обаче тези правила не работят за хора с windows, т.е. те могат да си теглят и виждат всичко. И като реша аз да се закача, интернета веднага пада (i.e. “разлогва” се), защото умните настройки решават, че Linux-ът ми е нещо, което тегли торенти (или прави каквото там е забранено). Нямам торенти и не правя нищо, което би трябвало да е забранено в нормалния свят.
Long story short, написах си това и вече почти мога да ползвам интернет.
Почти, защото някои сайтове изобщо не се зареждат, а на други мога да видя само html-а. Ако имам късмет и са ми останали кеширани стиловете и скриптовете, почти мога да ползвам дадените сайтове.

Хубаво е, че не живея тук. Нямаше да имат секунда спокойствие, докато не го оправят.

Четене на SMS-ите от джажите за интернет на Vivacom

От известно време на лаптопа имам само мобилен интернет, за който ползвам USB модем от vivacom.
Джаджата е Huawei и под windows идва с шарена програма, от която може да се следи трафика, да се гледат SMS-ите и разни други неща. На картата в модема се праща SMS, когато свършат “бързите мегабайти” и когато излезе сметката.

Вчера ми се прищя да си чета SMS-ите без да минавам на windows и след като се поразрових малко, намерих разни неща за устройството. Не беше никак трудно да намеря как става номера. Оказа се много просто – пращам команди, чета резултата, обработвам го и – готово.

От джаджата към компютъра постоянно летят статистики за изпратени/получени данни, скорост и др., които изглеждат долу-горе така:


^DSFLOWRPT:00000454,00000D36,00000092,00000000001912E8,000000000017E69A,00004000,00004000

^DSFLOWRPT:00000456,0000001A,0000004E,000000000019131C,000000000017E736,00004000,00004000
[...]

Нещото приема AT+C команди и за да върне SMS-ите, трябва да му се каже това:

AT+CMGF=1
АT+CSCS="UTF8"
AT+CMGL="ALL"

Първо го направих на python, но след това видях, че вече е правенo реших да го пренапиша на C++. По-голямата част си е чисто C, но заради работата с низовете се прежалих да ползвам и C++.
Long story short – нещото го има в github – https://github.com/chilyashev/smsread

Пробвано е с Huawei E173 и не е давало дефекти. Само веднъж се случи да хвърли SIGSEGV, малко след като вкарах устройството в USB-то, но това е нормално, все пак не беше инициализирано.
Ако се докопам до други джаджи, ще пробвам и с тях.

Ако в близките дни имам повече свободно време, ще му напиша GUI на pygtk или друго човешко нещо. Ще си чертая графики на статистиките, да ми е удобно. Мда.

2012

Равносметка. Защото така.

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

Общо взето се случи това:

  • Успях без кой знае какви усилия известно време да се издържам като freelancer. Имах достатъчно време да мързелувам и да уча, докато се занимавам с разни проекти. Научих се (или поне така си мисля) да подхожам както трябва към клиентите. Беше интересно.
  • След това си намерих постоянна (да се чете истинска) работа и общо взето ежедневието ми стана почти монотонно – работа, спане, работа и межувременно ядене и други работи.
  • Освен, че се издържах сам, се насладих на търсенето на временно място за живеене. Това беше от неприятните преживявания, но накрая успях да си намеря добро и удобно място.
  • Все още не са ме отказали от ученето тук. Даже към момента съм почти 55% инженер – клик.
  • Не научих нито един нов език, било то за програмиране или междучовешка комуникация. Но пък развих тези, които вече знам. Например – написах си php framework и половина. Не подозирах колко елементарно става и колко малко е нужно.
  • Купих си кола. Много полезно нещо. Ако ми се осъществят плановете, ще направя доста интересни неща по нея.

Като цяло не беше крайно зле, но, както винаги, може и по-добре.
Ще ми се през 2013 да реализирам поне половината от нещата, които съм си намислил. Първо да се наспя, пък после ще мислим другите работи.

That is all.