Нова работа

Бях се наканил да пиша по няколко поста седмично, но пак не се получха моите планове.

Големите новини в изминалото време са:

  • Смених работата. За това – отделно ще пиша;
  • Взех изпита за Радиолюбител клас 2 (очаквам от КРС официалните си инициали скоро);
  • Направих традиционния 200 км бревет “Тракийска есен”.

Покрай работата има супер много задачи, но и уча с пълни темпове така, че скоро ще направя цяла серия с интересни неща + как да търсим работа – the right way

Да свириш Бах на 90

Днес ще си говорим за любов.

И по-скоро за двама влюбени, а именно Márta and György Kurtág (няма да ги пиша на Български, защото транскрипцията на György Kurtág е [ˈɟørɟ ˈkurtaːɡ] :) ).

György Kurtág е един от най-значимите композитори и пианисти в последните 90 години (wiki page за повече информация). Свири с жена си Márta, която също е успешен пианист.

György е роден в Румъния през 1926 г., мести се в Унгрия 1946 г. и се жени година по-късно за Márta (тогава) Kinsker. Двамата стават дует от тогава до ден днешен. Или точно седемдесет години.
Имайки цялото време на света те са направили нещо удивително – сляли са любовта един към друг (както можете да видите и от видеото) и любовта към музиката в едно.

И без повече пледоарии ви преставям запис от техен концерт от края на Ноември миналата година:

 

Не мога?

Лягам си. Или не – май ставам вече?
Съзнанието ми още е замъглено, преценката ми още не работи.

Усещам странна сила в себе си. Усещам хармония. Чувам в главата си няколко гласа едновременно – тези на разтревожените, но окуражаващи родители, брат ми, който без думи ми казва неща, които само братята могат да си кажат без да отварят уста, Нейния глас.

След стихията отварям очи и поглеждам празно в тавана.

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

Сбръчквам чело.

Когато бях малък всеки път когато казвах, че не мога татко казваше – “Не може да не можеш”.

Не мога да не мога.

Май ще мога.

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

Човече – това е нова бръчка, още няколко бели косъма. След 2-3 месеца ще направиш 30. И си дебел.
Няма да можеш.

Но ще можеш. Защото си упорит.

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

Никога.

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

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

Май ще можеш.

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

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

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

Себе си.

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

Единственото нещо, което имаш сега е раница, велосипед и точно 303 километра, които трябва да изизминеш.

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

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

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

“Не може да не може”

Въртиш колкото можеш. След това още. И още.

След 10 трудни часа вече си отчаян.

Не можеш повече.

Боли.

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

Няма.
Да.
Мога.

Казвам тихо. И скланям глава. Притварям очи. И последното, което виждам е Аз. Стои огледално в асфалта, усмихва ми се и сякаш ми казва – “Казах ти, че не можеш. Не можеш да си по-добър от самия себе си.”.

И усещам пак кръвта в главата, ръцете, краката, въздуха, всяка молекула.
Боли.

Ще мога.
Ако не мога ще остана тук, лежейки за да знам, че съм направил ВСИЧКО. До тогва ще въртя по-бързо от всякога, ще ме боли повече от всякога, но ще се справя.

Капка се стича по носа ми. Вече не знам дали е пот или сълза. Поглеждам напред – другарите са с мен, помагат. Грохнал съм. Остават 80 км.

Боли.

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

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

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

Минавам финиша след почти 16 часа.

 

Събуждам се.
Поглеждаш се в огледалото.
Днес е моят ден.

Ще. Мога.

Ще.

Raspberry Pi 3 – по-мощен от всякога + вградени WiFi и Bluetooth

Тези, които ме познават знаят, че колекционирам разни проекти, които биха тръгнали на Raspberry Pi, Arduino, Olimex* и т.н. (и още нищо не съм реализирал от край до край…). Покрай новото Raspberry Pi се реших да напиша една кратка статия за него, за компанията и защо тази малка платка е толкова популярна.

 

Първо ще започнем с малко интро защо изобщо тези малки SoC (System on Chip) са толкова популярни и се продават с милиони бройки всяка година.

Raspberry Pi е малка развойна платка, която има всички нужни параметри, за да работи като самостоятелен компютър – процесор, памет, storage port, има си няколко USB, GPIO (General-purpose input/output за комуникация с различни периферии извън USB), HDMI аудио/видео изход, без движещи се елементи (вентилатор) и т.н. Цялото това нещо тежи едва 45 грама (за последната версия без адаптера).

Второ – защо ни е такава развойна платка?

Когато за пръв път попаднах на сайта на Raspberry Pi си помислих, че това е развойна платка, която се използва в роботиката и/или автоматизацията (основно заради тогавашните проекти най-вероятно) и е много тясно специализирана. След няколко дни пак се присетих нещо за Pi-то и се замислих, че на това чудо биха тръгнали всякакви интересни неща, ако му се подкара някаква (Linux базирана) операционна система.

Разбира се след като открих Raspbian (базиран на Debian) и NOOBS разбрах колко ценен е този малък продукт. С времето видях как хора го ползват от всякакви проекти – от метереологични станции през малки Apache/nginx services, home automation (с подходящите китове, които се продават отделно можете да настройвате климатици, да отваряте и затваряте прозорци и врати и каквото се сетите още (ето един страхотен пример за open source home automation) и стигнетете до изграждане на клъстери с 256 паралелно работещи Pi-та за каквото се сетите.

Всичко, от което имате нужда е едно Raspberry Pi, памет (последната трета версия работи с microSD карти, предците му – с SD) и адаптер с мощност от над един ампер (тоест повечето зарядни за телефони, например) и ще можете да си поиграете с тази играчка.

Трето – моите идеи. Те, разбира се, са ужасно много, но след строга селекция реших да използвам моето Raspberry Pi 2, за да се запозная малко повече с:

  • mySQL replication;
  • Load balancing (с Apache/nginx);
  • Failover schemes (пак с Apache);
  • Proxies;
  • (евентуално) High-availability.

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

Червърто – периферия. С разширяването на проекта разработчиците и third parity страни започнаха разработки на интересни хардуерни проекти свързани с Pi. Може би първото нещо, което прави в мен най-силна асоциация е Camera Pi. Това е една микроскопична 5 мегапикселова камера с размери 25х24х9 и тежи едва три грама (без интерфейсния кабел), снима видео в 1080p (30 кадъра в секунда), 720p (60 кадъра в секунда) и 640x480p (60/90 кадъра в секунда). Повече информация за нея можете да прочетете тук. Има и инфрачервена версия – NoIR Camera.

Разбира се освен камерата има и още много хардуер, който е съвместим (или правен за) Raspberry Pi, например дисанционни, мишки и клавиатури, WiFi, 3G, Infrared и Bluetooth приемници, звукови карти, GPS, smart card readers, екрани чувствителни на допир, скенери за пръстви отпечатъци и още много други. Ето тук можете да видите пълен списък с устройствата, които са тествани и работят на Pi.

Пето – малко история. Типично за мен започвам нещата малко отзад напред.

В общи линии идеята на проекта се е зародила от възпитаниците на Кеймбридж Eben Upton, Rob Mullins, Jack Lang и Alan Mycroft през 2006 г. с идеята да създадат достъпен компютър за общи цели. Техния ценови диапазон (само за платката) е едва $35 (като имат и Raspberry Pi Zero за … $5, но за него след малко). За рожден ден на проекта създателите смятат датата 29.02, защото тогава са направили и първата продажба на Raspberry Pi 1.
Ето и през какви периоди преминава Raspberry Pi за последните 4 години:

02.2012: Raspberry Pi Model B
10.2012: Raspberry Pi Model B rev2
02.2013: Raspberry Pi Model A
05.2013: Camera module
10.2013: Infra-red Camera module
07.2014: Raspberry Pi Model B+
11.2014: Raspberry Pi Model A+
04.2014: Raspberry Pi Compute Module
02.2015: Raspberry Pi 2 Model B
08.2015: Raspberry Pi Sense HAT
11.2015: Raspberry Pi Zero
02.2016: Raspberry Pi 3 Model B

По данни на Raspberry Pi foundation за 4 години са продадени над 8 милиона устройства.

Пето – най-доброто, което Raspberry Pi може да ви предложи – Raspberry Pi 3.

С всяка версия Raspberry Pi става невъзможно добро, а цената му си остава същата.

Ето и спецификациите с които може да се похвали последния Pi:

Чипсет – Broadcoam BCM2837 (CPU, GPU, DSP, SDRAM) срещу 32 битовия му предшественик Broadcom BCM2836;

Процесор – ARM Cortex-A53 1.2 GHz 64-bit quad-core срещу QUAD Core @900 MHz;

Рам памет – 1 GB @ 400 MHz (споделена с тази на видео картата);

Видео – Broadcom VideoCore IV @ 250 MHz, поддържа OpenGL ES 2.0 (производителност от 24 гигафлопа), хардуерен MPEG-2 и VC-1 кодеци,1080p 30 кадъра в секунда H.264/MPEG-4 AVC декодер и енкодер

USB – 4 готови за използване USB 2 порта (всъщност са 5, но единия е резервиран за ethernet модула);

Видео вход – 15 пинов MIPI  интерфейс (CSI) за връзка с Raspberry Pi Camera и Raspberry Pi NoIR);

Видео изход – HDMI (ревизии 1.3 & 1.4) в 14 резолюции от 640×350 до 1920×1200 плюс PAL и NTSC стандарти, composite video (PAL и NTSC) през стандартен 3.5 мм жак със споделен аудио изход;

Звук – всички версии на Raspberry Pi използват I²S;

Storage – през microSDHC карта, идва с допълнителни 4 GB eMMC;

Мрежа – Еthernet – 10/100

Мрежа – Wireless – 802.11n

Bluetooth – 4.1 поддържата и Low Energy

 

Цена от производител (без доставка и адаптер) – $35 (не забравяйте, че в тази версия WiFi и Bluetooth са вградени и няма нужда да ги купувате отделно);

Цена за адаптер – около $8

MicroSD карта – 16GB microSDHC за около $8

Обща цена без доставка – $51

Търсите нещо още по-евтино? Няма проблем. Клон на проекта Pi е Zero. Това е още по-малко, по-просто и много по-евтино устройство, което ще задоволи нуждите на всеки, който търси автоматизация на възможно най-ниска цена.

Спецификации:

Процесор – Broadcom BCM2835 ARM 11 @ 1 GHz (или с около 40% по-бърз от първото Pi);

Рам памет – 512MB LPDDR2;

Слот за microSD карта;

mini-HDMI сокет с до 1080p @ 60 fps

40 pin GPIO (съвместим с всички останали Pi от първия до последния);

Размер – 65мм x 30мм x 5мм

Цена – wait for it… $5.

Извод – няма нужда да сте запален geek или специалист, за да подкарате Raspberry Pi и то да върши точно това, от което имате нужда. Платката е производителна, не грее (много), не е скъпа и има огромно предназначение. Силно препоръчвам Raspberry Pi / Raspberry Zero на хора, които са от специалисти до начинаещи в бранша и дори деца (представете си вашия 10-12 годишен син/дъщеря да котролират кога диода закачен на GPIO-то ще свети и кога не).

 

Ако има интерес ще напиша и за конкурентите на Raspberry Pi, които са също толкова впечатляващи, а някои от тях – дори и по-евтини.

QualityAssurance.pro brought back to life

I bought the perfect domain for a quality assurance blog about four years ago. It’s called QualityAssurance.pro. I started the project but it failed. And it failed for the following reasons:

  1. Unclear concept;
  2. Inefficient article structure;
  3. It took me way more time to set up the WordPress theme to write a couple of articles.

For those four years I learned a lot and I recently launched Nedko.info (personal humorous blog in Bulgarian). This made me feel like the time to bring QualityAssurance.pro back to life is now!

My concept for it is very simple:

  1. Highly targeted content based on the following subject mainly:
    1. Software Quality Assurance;
    2. Development;
    3. System administration (mostly *unix based, but Windows will be on the list somehow :) );
    4. Practical tips and tricks, tools.
  2. Some fun and geeky projects;
  3. Brand new, very clean and simple design that makes reading as easy as possible;
  4. The fanciest logo the world would ever see!;
  5. “Article request form” that will gather ideas for new articles;
  6. NO commercials, no AdWords, no clickbait and etc (the people who know me they know that I hate that kind of stuff);
  7. Articles written in English only. That should make me improve my English (or at least I hope so!);
  8. All IT related posts from Nedko.info will be translated there so there will be no information loss;
  9. Nedko.info will remain my personal blog (in Bulgarian only);
  10. Changelog to keep you up with the platform improvements.

So stay tuned.

Cheers,
Nedko.

Недко разказва: По петите на българското здравеопазване

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

Средната възраст е някъде между 73 и 75 години и всеки е хванал направлението си като олимпиец – заветния огън и стиска, мрънка на глас и гледа лошо (като в детска дискотека).
Заставам в по-младата част от колоната. Там повечето сигурно познават Тутанкамон, но аз нямам проблем с това.
И започва едно чакане.
Рецепционистките са малко по-бавни от болнави охлюви и с четвърт око гледат изпитателно всеки нов човек. Скорострелно взимат кинтите, подпечатват (май?) направлението, обясняват къде да отидеш (общо 15 минути) и идва ред на следващия.
Аз през това време гледам да дишам равномерно, контролирано, нямам желание да си вадя джобното ножче да ходя да ръчкам хората около мен с него, а за пистолета дори не съм се и замислял. Докато не усетих най-големия си страх. Едно масивно тяло се допря в гърба ми. Усетих за момент как ще загубя най-свещеното си, най-пазеното и ценно нещо в тоя жесток свят. Вцепенен се обръщам скорострелно и гледам – една тлъста бабка си забила в мен едновременно циците, корема, колената и обувките (обувките, копеле!) в моя гъзогръб.
Започва се една непрестанна комуникация между мен и женщината – аз пускам студена пот стиснал бузите, тя ми пръхти нежно на ухото докато ми изпотява допирните точки. Танцувахме бойния танц на радостта заедно. Не издържах и ѝ казах нежно: “Госпожо, бихте ли се отлепили от мен?” и … бяло.
Тишина, тунел. Отварям леко очи – виждам коса.
Отварям още малко – ОЩЕ КОСА. Оглеждам се бавно (всичко ме боли) – на земята съм, повален с един удар на това страшилище на всички дискотечни охранители, а тя, същата стои стъпала върху косата ми (да не я пререди някой, разбира се!).
Излишно е да казвам, че това, което видях не беше коса…
Така започнах с хомеопатията, драги читатели. Никога повече по болници.

Недко разказва: Днес Гугъл дават безплатно 2GB за всеки, който си прегледа настройките за сигурност в акаунта си

Това безпорно е най-дългото ми заглавие. И най-тъпо. Все едно някой академичен човек го е писал.

Причината за “щедростта” на Google.com е, че днес е денят на сигурността в интернет.

Единственото, което трябва да направите е да влезете в акаунта си от този линк и да проверите дали security настройките ви са добре и ще получите безплатно 2 GB квота.
Тези два гигабайта са без допълнителни условия. Та с тях моя акаунт събра 19 гб, което съвсем скоро смятам да мигрирам към собствен OwnCloud.

Хайде със здраве.

Ваш Недко.

 

Недко разказва: За сайта на МОН, МВР, НАП, OFFNEWS.bg XSS атаките и OWASP

Днес за пореден път се доказа твърдението, че добрия програмист не пише само функционалност, която да работи, а такава, която е съобразена с множество фактори – скорост, сигурност, логичност. Този път сайтовете са Министерството на Образованието и Науката и Министерство на Вътрешните Работи и новинарския сайт OFFNEWS.BG бяха мишената използвайки очевидно една и съща търсачка. И да ви кажа честно – срам е, че някой не си е escape–нал параметрите за да предтврати един прост XSS, които потребителя подава. Това е нещо тривиално, нещо, което всеки, който пише код трябва да знае и използва. Защото знаете – когато пишем никога не трябва да имаме доверие на потребителите. Ни-ко-га.

Read More

Сканиране за лоши сектори под Linux

Има едно нещо, което е по-лошо от счупения хардуер и то е умиращия такъв. Тия дни ми се наложи да сканирам няколко хард диска за лоши сектори под linux (в моя случай това е офисната ми машина с Ubuntu 14.04.3 LTS + Mate) и след извесно чудене кой метод да избера се спрях на badblocks. Хубавото му е, че единственото нещо, което го накарах да изведе е списък с лошите сектори, които евентуално по-късно можех да обработя с fsck. Без графични интерфейси, излишни прозорци и т.н. Автор на badblocks е Реми Кард.

Инсталацията му под Debian базирани инсталации е тривиална: Read More

Недко разказва: За “лошите” работодатели

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

Та си говорихме скоро за работата и се учудих на всеобщото мнение как, цитирам “Всички работодатели са лоши и те изстискват” и там каквото беше нататък.

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

 

НИКОГА не съм започвал да работя нещо, което не обичам. От кабелджия опъвайки по цял ден кабели насам-натам носейки стълба, която беше тежка колкото мен за малък ISP (с тайното желание някой ден да стана системен администратор), през търговията с компютри, внедряването на софруер за управление на бизнеса (включително и за управление на индустриални съоръжения) та до последните години в които съм се квалифицирал основно като Software Quality Assurance Engineer. И никога и не съм попадал на “кофти работодатели”.

И ще ми кажете, че това е късмет, но мога да ви уверя, че не е.

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

Относно заплатите и условията съм чувал толкова много, че ако го разпиша сигурно ще стигна max post size на wordpress. Имал съм познати, които като им опиша офиса в който работя, всичките излизания с колеги, teambuildings, работна среда и това с което се занимавам веднага започват с “Ама то сигурно там ви изстискват, сигурно шефовете са гадни, сигурно има страшно много работа” ала бала. Well – fuck off, dudes.
Всеки иска да започне да работи за 1500 лв . – 2000 лв. стартова, ‘щото видиш ли в IT бранша хора няма. Еми няма. Ква-ли-фи-ци-ра-ни хора няма обаче.
Не може човек, който е прочел общо 12 страници за HTML/CSS/JS/PHP/bash или каквото и да е там, който най-малкото не може да си настрои работната среда (и не се опитвайте да ме убедите, че примерно един PHP developer не трябва да разбира от Apache(nginx)/mySQL(MariaDB)/малко Linux (или съответно .NET developer с неговата среда) ) да очаква да започне на подобна заплата.

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

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

 

Note – сега се сетих за два страхотни примера за хора, които искат да се развиват:

  1. В университета в който учих ( и водих лекции по едно време ) имахме колега, който беше на около 60 години. С пъти по-надъхан от нас, с пъти по-заинтересован, по-аналитичен, по-добър и за пример. Не веднъж е спирал хора по коридора да пита кое как става, а с него сме прекарали доста време в разговори за IT частта. И беше абсолютното удоволствие да видиш човек, който няма абсолютно никакъв подобен background, който не разбира английски, компютрите му бяха табу да си записва всичко и на следващия ден да ти задава въпроси по това, което сме си говорили и като му кажем, че е точно така и да виждаме зле прикритото вълнение, което блика в него. Да е жив и здрав бай Данчо.
  2. Злати – от дизайнер реши да се преквалифицира на developer. Сега пише основно на C# като има и front end задачки. Пак аналитична, критична и надъхана. Удоволствие е да ѝ намериш бъг и да ѝ видиш погледа като ти покаже фикснатата версия. Пак задаваща въпроси и четяща много.

 

Note 2 – с писането на този пост се присетих, че няма да е лоша идея да разпиша един за това как аз избирам евентуален бъдещ работодател (research + комуникация с компанията), че често основно хора на които съм водил лекции някъде са ме питали. Така, че през следващите дни очаквайте нещо по въпроса.

 

Ваш (хейтещ),

Недко.