Този, който знае

Днес ми попадна този цитат. Някой казват, че е “Персийска мъдрост”, други че е на Ридиард Киплинг – който и да е източника, на мен ми харесва с това, че за да го схванеш, се иска малко мислене 😉

Който не знае,
и не знае, че не знае,
е глупак –
ИЗБЯГВАЙ ГО.

Който не знае,
и знае, че не знае,
е ученик (може да бъде научен) –
НАУЧИ ГО.

Който знае,
и не знае, че знае,
спи –
СЪБУДИ ГО.

Който знае,
и знае, че знае,
е мъдрец –
СЛЕДВАЙ ГО (УЧИ СЕ ОТ НЕГО)!

24-ти Май

Манифестация по случай 24-ти май

Не бях ходил на 24-то-майска манифестация от както бях ученик – вече повече от 30 години. Спомените ми от тогавашните манифестации са “Хм, нищо особенно. Всички под строй, задължително, много висене, голяма умора”.

Тази година обаче, реших да отида. И въобще не съжалявам. Усещането и духът сред хората е съвсем различен от преди 30 години. Вярно, че и сега някои от учениците и учителите са там по задължение, но повечто имат избор и биха могли да го пропуснат. А освен тях, беше пълно с хора, извън манифестацията, дошли просто да учатват в празника. Толкова много деца, усмихнати, весели, нагласени.

24 май е истинският народен български празник. Не знам има ли друг народ, който така да обича и уважава образованието, та да му посвети специален празник. Докато е така, имаме бъдеще! 🙂

Ето малко снимки от това специално за народа ни събитие

SoftUni Конференция – март 2015

Този месец, на 20-22 март, Софтуерния университет (СофтУни) организира технологична конференция за начинаещи програмисти и ИТ специалисти, студенти от университета, ентусиасти. Това е третата конференция на СофтУни, като този път мястото е Пампорово.

SoftUni-LogoУниверситета беше създаден преди около година и половина, и следя развитието му с интерес. Радвам се, на успехите и конференциите, които организират. Студентите и младите ИТ специалисти, имат нужда от събития, на които да обменят знания и опит с по-старшите си колеги.

В СофтУни Конф ще се включат доста опитни и известни лектори от ИТ сферата. Ще има много и интересни теми свързани с разработването на софтуер. Някои от темите са чисто технически, като например: уеб разработка, мобилни приложения, бази данни, 3D графика. Други от темите са нетехнически, но обхващат важни аспекти от професията “софтуерен инженер”: здраве, спорт и социални умения. А аз ще имам привилегията да говоря за една тема, която е свързващото звено между техническите и нетехническите – “Програмиране в екип”.

Повече информация и записване на страницата на конференцията: https://softuni.bg/SoftUniConf

Ще се видим там. Ще бъде весело и полезно 🙂

HTML5 Android Cordova

Преди няколко седмици се включих в курс по програмиране на HTML5 за Android, който се води от моя приятел Леон Анави.

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

Хибридни приложения

Хибридните приложения са уеб приложения, написани на HTML, CSS, JavaScript, които се изпълняват на мобилно устройство. Мобилните платформи не позволяват директно използване на HTML, CSS, JavaScript за да си направите приложение. Затова се прави следния трик:

  1. Пишете си приложението на HTML, CSS, JavaScript, така, както бихте го писали да се изпълнява в web browser – Google Chrome, FireFox, Internet Explorer.
  2. Когато дойде време да качите приложението на мобилно устройство, то се пакетира с Web Browser control. Реално, мобилното ви приложение е един Web Browser, като този browser изпълнява вашия HTML, CSS, JavaScript код, които са включени в пакета на приложението.
  3. Потребителя на приложението не забелязва, че това е уеб приложение. За него то изглежда като нормално приложение за мобилното устройство.

Архитектурно така изглеждат нещата:
cordova-phonegap-encryption

Предимства

Идеята е добра и има следните предимства (нa теория):

  • Пишете кода веднъж, ползвате го на много мобилни платформи
  • Лесно за разработване – използват се масовите технологии HTML, CSS, JavaScript
  • Следствие от горното е, че има много уеб програмисти, които няма нужда да се квалифицират за всяка отделна платформа.

Недостатъци

  • Светът на мобилните устройства е доста разнообразен. Оказва се, че Web Browser Control-а, който се използва на всяка платформа, се доставя от самата платформа. А всяка платформа реализира по различен начин HTML5 стандарта.
  • JavaScript, който изпълнявате в Web Browser Control-а има ограничен достъп до устройството. За достъп до неща като: камера, GSP, Accelerometer се използват специални плъгини. Не е сигурно дали тези плъгини работят еднакво на всички платформи.
  • Следствие от горното е, че ако искате приложението да върви на много устройства, все пак ще трябва да се съобразите с различните особености и да напишете съответния код.
  • Езикът за програмиране е JavaScript. Това не е език, на който можете лесно да напишете сложно приложение. За малки и сравнително прости проекти – върши перфектна работа. Но ако искате нещо по-сложно е трудно проекта да се направи и след това поддържа.
  • Следствие от горното е, че приложението може да работи много бавно и да консумира много ресурси на устройството.

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

Разглеждаме платформата Apache Cordova, като се фокусираме на приложения за Android.

Първи впечатления

  1. Сравнително лесно за инсталиране на платформата за разработване
  2. Широка поддръжка на платформи на които да разработвате приложенията – Windows, Mac, Linux
  3. Широка поддръжка на платформи за които да правите приложения – Android, iOS, Windows Phone, Windows desktop, Ubuntu, Mac OS X, Balckberry и други
  4. Добра документация
  5. Сравнително лесно се пише приложение

Освен това открих, че има много приложения направени на Apache Cordova (PhoneGap е комерсиалната версия на Apache Cordova), което показва, че платформата е популярна.

Инсталиране на Apache Cordova

Оказа се, че хората са се потрудили и инсталацията на Apache Cordova е лесна. Много бързо, без особени затруднения се стига до създаването на “Hello World” проект, който после лесно се модифицира според вашите нужди.

В Интернет е пълно с ръководства, как да се инсталира, но ще го напиша тук за да ми напомня на мен как се прави 🙂

Инсталирате:

  1. Android Studio – няма да го използвате да пишете кода, но то ще инсталира Android SDK, което ви трябва за да правите приложение на Cordova за Android
  2. Node.js – с него се инсталират следващите компоненти
  3. Cordova

    npm install -g cordova

  4. Ripple – емулатор с който можете да пускате приложенията в web browser. Така лесно се дебъгват и тестват.

    npm install -g ripple-emulator

  5. Създаване на Cordova проект

    cordova create project-folder com.yourname.project-name Project-Name

  6. Добавяне на Android като платформа към проекта

    cd project-folder
    cordova platform add android

Това е. Сега взимате любимия си текстов редактор и започвате работа.

 

ПС: Леоне, благодаря за курса 🙂

Език свещен на моите деди

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

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

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

“Здравей Стефан”

или

“Стефан, може ли …”

Забелязвате ли това, което забелязвам и аз? Липсва едно “е”. Трябва да е

“Здравей Стефане”

или

“Стефане, може ли…”

Не стига, че го пропускат в разговор, но все по-често се случва и в писмена кореспонденция.

Много по-добре звучи да кажеш “Здравей Стефане”, “Здравей Иване”, “Здравей Ники”, отколкото “Здравей Стефан”, “Здравей Иван” или “Здравей Николай”.

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

Моля ви хора, когато се обръщате към мен, кажете или напишете “Здравей Стефане”. Доставете ми тази малка радост, моля.