неделя, 18 октомври 2015 г.

ARM - сърцето на смартфоните


За поредна година най-желаният подарък остава качественият smartphone. Само през 2014г са купени над 1 млр. смартфона. Концепцията за комбиниране на телефон и компютър е още от 1909г и принадлежи на Тесла, а първото устройство маркетирано като "smartphone" беше Ericsson R380 от 2000г. Smart ерата започна с невероятно бързи темпове на развитие и днес това цифрово устройство осигурява на потребителя множество възможности - клетъчен телефон, мултимедиен плейър, GPS навигация, интернет достъп, камера, мобилно банкиране, игри, апове и разбира се тъчскрийн интерфейс. 
Имайки предвид наближаващите коледни и новогодишни празници, нека погледнем към моделите устройства, предлагани от водещите компании към месец Октомври 2015 в България - Samsung Galaxy S6 Edge, Lenovo Vibe Shot Z90, Motorola Nexus 6, LG G4, Apple iPhone 6s и Microsoft Lumia 640 XL:

Кой модел да изберем? Обективността и компетенциите на продавачите като консултанти е съмнителна, а инвестицията в устройство, което минава 1 000, а дори и 2 000 лв. трябва да е осъзнато аргументирано решение. Общоизвестен главен критерий за преценка качествата на компютърни устройства е скоростта на процесора, но как да се ориентираме в тези описания на процесорите: Octa-Core, Qualcomm Krait, Snapdragon 808, A9, Snapdragon 400
Какво означава всичко това? Какви са различията? Какво ни е нужно? 

За да отговорим на всички тези въпроси е нужно да се обърнем към историята. В далечната 1983 г. британската компания Acorn Computers търси нов процесор, който да е достатъчно мощен, за да поддържа операционна система с графичен интерфейс. Инженерите на Acorn се спират на разработката на група студенти от университета Бъркли в Калифорния - проект RISC /Restricted (reduced) Instruction Set Computer/. Характерно за този процесор е малкият брой транзистори, съкратеният набор от поддържани команди, а оттук ниската консумация на енергия. През 1985 г се появява ARM1 /Acorn RISC Machine/, а още на следващата година ARM2 /8-12 MHz/ и ARM3 /25 MHz/. 

През 1992 г Acorn и Apple разработват ARM6 /12-33 MHz/ и го реализират в един от първите джобни персонални компютри Apple Newton PDA. Устройството не успява да се наложи на пазара поради типичната за Apple висока цена /над $1 000/ и размери, които не са "джобни". За пореден път историята с промишления шпионаж и кражбата на ноу-хау се повтарят! Служителката на Apple Donna Dubinsky - напуска компанията и основава своята Palm Computing и през 1996г поднася на пазара значително по-евтино и с по-малки размери устройство -  Palm Pilot. Именно Palm налага този нов тип устройство - PDA, Personal Digital Assistant - предшественик на съвременните smart устройства.

В ARM7 и ARM8 скоростта е 40-72 MHz, в ARM9 е между 180-200 MHz, а в ARM11: 532-772 MHz/. От 2005г серията ARM се продължава от серията Cortex A, чието развитие до днес е следното:

Cortex A 
Ядра с архитектура ARMv7-A /поддръжка на 32-битови ядра/
А8 /2005/:    от 600 MHz до 1 GHz, 1 ядро
          L1:16-32 KB Instruction + 16-32 KB Data cache; L2: 256-512 KB /opt./
А9 /2007/:   подобрява производителността на А8 с 50%;
          от 0.8-2 GHz, 1-4 ядра
          L1:16-64 KB Instruction + 16-64 KB Data cache; L2: 1 MB /opt./
А5 /2009/:  поддържа около 70% от производителността на А9 при два пъти по-нисък енергоразход
         530 MHz - 1 GHz, 1-4 ядра
          L1:4-64 KB Instruction + 4-64 KB Data cache
А15 /2010/: подобрява производителността на А9 с 50 до 100%;
          от 1 до 2,5 GHz, 1-4 ядра
          L1:32 KB Instruction + 32 KB Data cache; L2: 256KB - 8MB;
А7 /2011/: подобрява производителността на А9 с 50 до 100%;
          от 1,2 до 1,6 GHz, 1-4 ядра
          L1:16-64 KB Instruction + 16-64 KB Data cache; L2: 1 MB /opt./
А12 /2013/: 
          ?? GHz, 1-4 ядра
          L1:32-64 KB Instruction + 32 KB Data cache; L2: 256KB - 8MB;
А17 /2014/: подобрява производителността на А9 с около 60%;
          ?GHz, 1-4 ядра,
          L1:32-64 KB Instruction + 32 KB Data cache; L2: 256KB - 8MB;
Ядра с архитектура ARMv8-A  /поддръжка на 64-битови ядра/
А53 /2012/ - подобрява производителността на А7 с около 50%;
          1-2,5 GHz, 1-4 ядра
          L1:8-64 KB Instruction + 8-64 KB Data cache; L2: 128KB/1MB/2MB;
         А53 може да се ползва заедно с А57 или А72 в конфигурация ARM big.LITTLE.
А57 /2012/ - подобрява производителността на А15 със 100 до 200%;
          1-2,5 GHz, 1-4 ядра
          L1:48 KB I + 32 KB Data cache, 3-way; L2: 512KB/1MB/2MB, 16-way;
А72 /2015/ - производителността му е над 3 пъти по-голяма от А15
          до 2,5 GHz, 1-4 ядра
          L1:48 KB I + 32 KB Data cache; L2: 512KB/1MB/2MB/4MB.
На основата на някой от гореизброените Cortex A процесори се разработва едночипова система /System-On-Chip, SoC/ -  интегрална схема, включваща в себе си всички основни компоненти на един компютър /процесор, оперативна памет, графичен процесор, контролери за външни интерфейси, радиочестотни функции и т.н /.  

Стигнахме и до факта, че всеки смартфон всъщност е ARM SoC система. Производителите на SoC маркетират ARM разработките си чрез определено кодово име:
Apple - А;
Nvidia Corp. - Tegra;
Qualcomm Inc. - Snapdragon;
Samsung Electronics - Exynos;
MediaTek  - MTК и Helio
Други SoC производители са Rockchip Electronics Co, Allwinner Technology Co и др.

Време е да "разкодираме" какви ARM процесори стоят зад предложените флагмани на компаниите.
GALAXY S6 Edge /=> Cortex-A53 + Cortex-A57
Vibe Shot Z90=> Cortex-A53 + Cortex-A53
Nexus 6 /Qualcomm Snapdragon 805 Krait/ =>  Cortex-A15
G4 /Qualcomm Snapdragon 808/ => Cortex-A53 + Cortex-A57
iPhone 6s /Apple A9/ => ARMv8-A
Lumia 640 XL /Qualcomm Snapdragon 400 Krait/ => Cortex-A7

Откриваме, че моделите Nexus 6 и Lumia 640XL използват вече остарялата архитектура ARMv7-A, докато при останалите телефони е използвана новата 64-битова архитектура. Рискувайки да предизвикам неодобрението на "ябълковите" потребители, iPhone 6s е следващият отпаднал в надпреварата модел, заради само двете ядра на процесора. Останаха три конкурента, които притежават съвременна архитектура, но коя да предпочетем - съчетание на два А53 или конфигурация big.LITTLE на А53 с А57. Характеристиките на моделите /при 32 GB/ в съчетание с цената ще ни помогнат да вземем най-доброто решение:
Galaxy S6 Edge     A53 /4x1,5 GHz/ + A57 /4x2.1 GHz/ - 1 600 лв.
Vibe Shot Z90        A53 /4x1,0 GHz/ + A53 /4x1.7 GHz/ -   780 лв.     
G4                           A53 /4x1,4 GHz/ + A57 /2x1.8 GHz/ - 1 050 лв.
E, ако търсим "бюджетно" решение, то е очевидно - Lenovo Vibe Shot Z90, но ако търсим ефекта на т.нар. елитарна покупка, тогава изборът ни ще е Samsung Galaxy S6 Edge. Все пак, за специалистите, търсещи най-доброто съотношение между качество и цена ще е ясно, че LG G4 e несъмненият победител.
Не забравяйте, че през 2016г. предстои и премиерата на модели с процесор А72. След тяхната поява и увеличаването на RAM на 4 и повече гигабайта ни предстои най-сетне да получим smart устройство, което замества напълно преносим компютър от нисък към среден клас в ежедневната ни дейност. Чакането си заслужава...






неделя, 11 октомври 2015 г.

Седмица на програмирането в ЧОУ "Малкият Принц"


Всички сектори на европейската икономика са обвързани с цифровите технологии, а над 90% от професиите изискват компютърни компетенции. Прогнозира се към 2020 на европейския пазар на труда да е налице недостиг от над 900 000 компютърни специалиста, въпреки високото равнище на безработица. В резултат на това цифровите умения са от решаващо значение за намирането на добра работа или стартиране на бизнес.

През 2013г. заместник-председателят на Европейската комисия Нели Крус /Neelie Kroes/ даде началото на "Седмица на ЕС за програмирането", подкрепена от големи технологични компании като Google, Microsoft, Facebook, Rovio, Telefonica, SAP, Oracle и Liberty Global. Идеята е програмирането и свързаните с него умения да станат по-малко тайнствени и да се популяризират сред милиони деца и ученици чрез предлагане на опитни семинари, разработване на учебни модули и подпомагане обучението за учители. По този начин ще се реализира визията на "Широка коалиция за работни места в сферата на цифровите технологии" - модернизиране на образованието и увеличаване привлекателността на ИКТ кариерите в хиперсвързания ни свят. 
Седем европейски министри на образованието вече въведоха задължителни часове по програмиране в националните учебни програми на своите страни, /България, Кипър, Гърция, Полша, Португалия, Обединеното кралство и Чешката република/, а в други пет страни то се предлага като избираем предмет в училище /Дания, Естония, Ирландия, Италия и Литва/.

През 2015г. Седмицата на програмирането се провежда от 10 до 18 октомври в 37 държави с над 4 000 събития и повече от 150 000 участника.

Към момента България участва с 29 събития, организирани в 5 града. В Гимназия по ИТ "Антоан дьо Сент-Екзюпери" дадохме старт на седмицата с лекция на проф. д-р Xavier Sun. Основната тема, която засегна професорът е значението на сертификационните програми на Microsoft, Cisco и CompTIA в креативното и доходно реализиране на младите хора в ИКТ сферата непосредствено след ученическите си години.

Школата по информатика към ЧОУ "Малкият Принц" организира събитието Scratch Play. Ученици, които успешно са покрили Scratch сертификати на пето ниво в продължение на 2 часа програмираха интерактивни истории в екип с нови членове на школата и неусетно ги въведоха в необятния свят на програмирането.

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

неделя, 4 октомври 2015 г.

Търсенето на програмисти във Варна

Вицепремиерите Ивайло Калфин и Румяна Бъчварова подготвят наредба, която да дава възможност за по-бързо издаване на работна виза на специалисти извън ЕС. Правителството трябва да я приеме до края на септември и да започне да се прилага от началото на следващата година. Задължително условие е вносните работници да са с висше образование и да получават от поканилата ги фирма заплата, три пъти по-голяма от средната за предходните 12 месеца. В момента това означава, че заплатите на внесените "по бърза писта" работници трябва да са около 2700 лв. Освен това работодателят, който си внася работници по този начин, ще трябва да им предложи поне 1-годишен трудов договор.

Заместник-министърът труда и социалната политика Гълъб Донев заяви:
"Парадокс е, че внасяме работна ръка в IT сектора, във високите технологии, в комуникациите. Там не достигат специалисти./…/ През последните месеци имаше заявки за IT специалисти от Мароко, Тунис, Индия. Това са страни, които имат високо развитие през последните години в тези сектори и имат подготвени специалисти".

ИНТЕРЕСНО! Какво е това търсене, което да налага внос на работна ръка за IT сектора. Истинската картина на пазара на труда може да бъде описана чрез преглед на търсените в момента позиции. Избрах да ползвам като източник на информация един от водещите сайтове за кариерни предложения - jobs.bg
Направих заявка за извеждане на публикуваните в последните 7 дни /28.09-04.10.2015/ обяви за постоянна работа на пълно работно време в гр, Варна за категория "ИТ - разработка/поддръжка на софтуер". Изведоха се 37 обяви, които прегледах за дублиране. За позиция ПРОГРАМИСТ /Developer/ се търсят 19 специалисти от 15 компании. Разпределих позициите според изисквания основен програмен език и ето каква е текущата ситуация:


Нека поясня, че два езика не са включени в графиката, но те са фундаментални и тяхното владеене се подразбира - HTML и CSS - за програмистите на JavaScript и PHP&MySQL. На пръв поглед, водеща е групата езици, базирани на С, която се оглавява от С# /3 позиции/, следван от С++. Реалният лидер обаче е друг - JavaScript, поради универсалното му приложение, а на второ място се оказва езикът за сървърно програмиране PHP.
На база посочените данни, мога уверено да споделя, че учебната програма по Информатика в гимназиална степен, при посоченото по-долу разпределение, е оптимална спрямо текущото търсене на специалисти в сектора.


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