Лекцията беше изнесена на 21.11.2012 г. в зала „Джон Атанасов“ (№102) учебен корпус 3 на ВТУ „св. св. Кирил и Методий“ – на факултет „Математика и информатика“, катедра „Алгебра и геометрия“

http://www.uni-vt.bg/1/?page=7225

Представения тук текст е извадка от презентацията подготвена за лекцията и не представлява пълното ѝ съдържание.

Увод

Лекцията разглежда основни аспекти в процеса на стартиране на собствен софтуерен бизнес, създаване на софтуерен продукт и предизвикателствата пред които е изправен предприемача – как идеята става компютърна програма и какво превръща една компютърна програма в продукт. Засегнати са темите за свободен софтуер и софтуера с отворен код. Лекторът споделя над 20-годишния си опит в областта на софтуерния бизнес от България и САЩ.

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

лектор: Невен Боянов

История и въведение

Опитът ми в областта на софтуера за последните 22 години.

1990-1999 България

  • ЗЗУ Велико Търново
  • VoisKit
  • SockTool
  • PRODEX Computers
  • CORE I’net Design

1999-2004 САЩ

  • One Small World / TheOne Technology Group
  • Portellus
  • AppletWorks
  • BulgariansOnline
  • Go2NYC.info

2004 България и САЩ

  • TransClick
  • TimesFoto
  • RantNetwork
  • FonMatch
  • Interlecta

Защо опитът е важен

Защо опита е толкова важен? Няколко неща:

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

Кога да стартираме

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

С какво да стартираме

Всяка добра идея, с помощта на подходящ екип от съмишленици, може да се превърне в добра компютърна програма, а после и в успешен софтуерен продукт.

Но какво прави програмата продукт?

Какво превръща програмата в продукт

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

Няколко правила

Ето някои прости неща които не трябва да се забравят и могат да бъдат приложени в повечето случаи:

  • Продуктът ще се ползва от „нормални“ хора, а не само от програмисти. Като изключим случаите когато се създават продукти специално за програмисти, във всички останали случай трябва да се съобразяваме с нивото на средностатистическия потребител та дори и малко по-надолу.
  • Графичния дизайн е много важен и той се прави от дизайнери, а не от програмисти. Експерименти в тази посока не бива да се правят защото резултатите може да са с тежки последствия.
  • Потребителския интерфейс, или последователността при опериране с програмата, е всъщност най-важен и трябва да се разработи от специалист по потребителски интерфейс. Изключение може да прави само случай когато сложната логика е част от самия продукт, например компютърна игра – във всички останали случай нещата трябва да са прости.
  • Не създателя на програмата кара потребителите да правят едно нещо или друго по определен начин, а обратното – потребителите карат създателя на програмата проектирайки я да се съобразява с техните нужди, навици и желания.
  • Продуктът трябва да изисква минимални усилия от ползвателя за да изпълни желаната задача. Потребителя не трябва да бъде каран да учи нови неща. Най-важното: никой не чете ръководството на потребителя.
  • Най-често използваните задачи трябва да са на най-късо разстояние. Това ще рече да са необходими на-малък брой кликове в менюта и под-менюта за да бъдат достигнати.
  • Процесът на усложняване, т.е. ползването на по-сложните функции на програмата трябва да може да става на последователно, на стъпки, според желанието и способностите на потребителя.

Но всъщност всичко започва с идеята.

Идеята

Всичко започва с една идея.

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

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

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

Предприемачеството не е работа за сам човек.

За това е нужен екип.

Екип

Екипът е най-важното.

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

Екипът винаги има, и трябва да има, лидер.

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

Екипът на стартиращ софтуерен бизнес задължително трябва да има специалисти за:

  • Софтуерен дизайн – разработчик на софтуер.
  • Продуктов дизайн – може, но не е желателно, да бъде и някой от другите.
  • Графичен дизайн – дизайнер за графичната част.
  • Бизнес, маркетинг и продажби – специалист.
  • Финансиране – специалист.

Въпреки че ще е нужен в по-късен етап, трябва да се работи и със специалист по финансиране.

Финансиране

Стартирайки трябва да бъдем подготвени да самофинансираме дейността си за неопределен период от време – може да е няколко месеца, но може и няколко години.

Има много примери за фирми които са успели да подсигурят финансиране на проекта си още в самото начало, но и такива които са „минали на плюс“ чак след като са започнали да генерират сами приход без външно финансиране.

Като цяло инвеститорите са благоразположени спрямо стартиращите в софтуерната област фирми.

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

Въпросите за финансиране на стартиращи софтуерни проекти е отвъд обсега на темата.

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

Офис

?!

Забравете за офиса!

Преди да решите на кое място в центъра или в кой квартал ще си изберете офис и от коя фирма ще купите компютрите, бюрото за шефа, кафе машината, SPS-а и т.н., по-добре се заемете със създаването на продукта за който сте се събрали – претворяването на идеята в нещо реално.

Технологиите на 21-ви век ни позволяват да работим с хора намиращи се на която и да е точка от земното кълбо. Офис може и да не наложи да търсите.

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

Защо в България

България предлага някои предимства за стартиране на софтуерен бизнес.

Предимства

  • Ниска цена за стартиране на бизнеса.
  • Ниски данъци, корпоративни и персонални.
  • Сравнително ниска цена на труда.

Естествено има си и недостатъци.

Недостатъци

  • Трудности при развиване на бизнеса, свързани с бюрокрация и законова уредба.
  • Трудности при създаване на екипи, мотивиран и лоялен към идеята.
  • Най-голямата трудност: намиране на съмишленици с нагласа за предприемачество.

А защо не извън България

Да! Защо не?

Ако сте се опитали да осъществете вашите идеи тук и сте се сблъскали с непреодолими препятствия произтичащи от факта ще физически се намиране и развивате дейност в България – не се колебайте да промените това и да помислите за друго място по света където вашите идеи могат да станат реалност.

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

Предизвикателства

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

Това всъщност е още една причина да започнем бизнес докато сме в колеж или университет където може да намерим съидейници все още необременени с работа за нечии чужди идеи и непридобили все още манталитета на наемния работник.

Предприемач не се става лесно.

Какво всъщност е предприемач

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

Софтуерния бизнес е специфичен и изисква ползването на специфични инструменти в процеса на разработка.

Инструменти

Ето някои от най важните инструменти които са неразделна част от процеса на разработка на софтуер.

Хранилище на кода и система за контрол на версиите

Системите CVS и Subversion са вече остарели като концепция, но все още се в употреба – не трябва да се ползват за нови проекти.

Съвременни системи са Git и Mercurial. Използването на една от двете е въпрос на личен избор.

Професионален и технически жаргон

Ползването на един и същ език в един малък екип изключително важно за бързата и ефективна комуникация.

Един пример: в областта на софтуера имаме Design Patterns – това позволява хората да използват едни и същи термини за едни и същи неща.

Подобен професионален жаргон съществува и в областта на графичния дизайн, бизнеса, финансите и т.н.

Среда за разработка

Eclipse, NetBeans, vi, Notepad.

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

Език за програмиране

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

Други инструменти

Много са нещата които трябва да се изберат и де се ползват в процеса на разработка на софтуер – бази данни, системи за тестване, и т.н., но това е отвъд темата.

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

Платформи

Често използван термин напоследък е Mobile First, и въпреки че той се използва в малко по-различен контекст и смисъл (основно в уеб дизайна) с пълно основание можем да твърдим, че мобилните платформи за софтуер трябва да са с най-висок приоритет при разработка на продукти предназначени за широк кръг от потребители.

Статистика

Понастоящем абонатите на мобилни услуги в света са около 6 млд.

Най-големите пазари за такива услуги са Китай, Индия, САЩ.

Ref.: http://mobithinking.com/mobile-marketing-tools/latest-mobile-stats

Къде сме ние

България е на 8-мо място в света по брой на мобилни телефони като процент от населението. Числото е 140% което ще рече, че почти половината от населението има по повече от един мобилен телефон.

Ref.: http://en.wikipedia.org/wiki/List_of_countries_by_number_of_mobile_phones_in_use

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

Предимства

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

Недостатъци

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

Какво да правим с десктоп потребителите

В голяма част от случаите те могат да ползват уеб-базирано решение.

Избора на мобилна платформа води след себе си нуждата да направим още един избор – коя, или кои точно мобилни платформи за изберем.

Мобилни платформи

Коя платформа да изберем.

Към днешна дата няма абсолютен лидер при мобилните платформи, за разлика от десктоп където преобладаващата операционна система е Windows.

Без съмнение Android и iOS са най-важните за момента мобилни платформи. Веднага след тях се нареждат BlackBerry, Windows Phone, J2ME, Symbian и т.н.

При всички положения няма една платформа която да доминира пазара и която да е единствената за която да си струва да се разработва.

По-важното обаче е, че в различните региони доминират различни платформи. Повече информация за това може да се намери в Интернет от различни агенции за проучвания като Gartner и други подобни.

В този смисъл платформите за смарт-телефони които са най-разпространени са Android, iOS, BlackBerry – в тази последователност.

Symbian, Windows Phone, Java/J2ME/Nokia-S40.

Мобилно приложение в днешно време се смята софтуер който се инсталира на телефона, но също и такъв който се ползва през мобилен уеб браузър.

Повечето мобилни и десктоп платформи днес предлагат изключително много готови за ползване ресурси и инструменти – значителна част от тях с отворен код или сходен лиценз.

Open Source vs. Proprietary

Отворен код срещу не-отворен код

Вечната тема.

Дали да се ползва софтуер с отворен код. Дали да се разработва софтуер с отворен код.

Софтуерът с отворен код защитава правата както на фирмата/екипът така и на всеки един неин член.

Затвореният код предоставя частична защита на интересите на формата от преки конкуренти и за кратък период от време.

Много често проекти стартират със затворен код и след като продуктът набере скорост и бъде инвестиран тогава кодът бива отварян.

Без значение коя точно мобилна платформа, или платформи, ще изберем за разработка на продукта и дали ще е с отворен код или не, това трябва да става в паралел с разработката на успешен бизнес модел.

Бизнес модел

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

За бизнес модела трябва да се мисли още от самото начало.

Софтуерът и софтуерните продукти има няколко големи предимства които ги отличават коренно от останалите индустрии:

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

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

Съществуват няколко отправни точки:

Реклами

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

Еднократна заплащане

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

Разновидност на този вариант е предлагането на тестов период през което време потребителя може да ползва част или всички функции на продукта. След изтичането на тестовия период потребителя трябва да заплати за по-нататъшно използване.

Абонамент

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

Услуги с добавена стойност

Това се оказва може би най-успешния бизнес модел. Той се състои в следното: (1) продуктът в основната си част се предоставя като безплатен; (2) за определени услуги трябва да се заплаща допълнително.

Частта от продукта или услугата която се предоставя като допълнителна се нарича често услуги с добавена стойност.

  • еднократно заплащане – еднократна такса за ползване на допълнителните функции/услуги на продукта, своеобразно отключване.
    пр.: нови нива за игра.
  • абонамент – многократно заплащане, всеки ден/седмица/месец/година, за да се ползват допълнителните функции.
    пр.: абонамент за четене пълните публикации в онлайн издание.
  • за количество или бройка – еднократно заплащане за определено количество от това което предоставя услугата или единична бройка от някаква предоставена единица.
    пр.: предплатени минути за разговор; допълнителен ресурс за компютърна игра.

Бизнес моделът води след себе си и въпросът за избор на една от многото системи за разплащане.

Системи за разплащане

Кредитни карти, PayPal, мобилни разплащания от оператора, специализирани системи.

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

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

Например, класацията за мобилни разплащания като основен метода за размяна на пари и взето като процент от населението се води от Кения (държава в Източна Африка) където 65% от населението (19 млн. от общо 29 млн.) са абонати на такава услуга.

Контакти

Невен Боянов

блог: http://boyanov.wordpress.com/

twitter: https://twitter.com/boyanov

За всичко останало – Google: neven boyanov

Материалът е публикуван като текст и презентация и на следните адреси:

 

Advertisements

Вашият коментар

Попълнете полетата по-долу или кликнете върху икона, за да влезете:

WordPress.com лого

You are commenting using your WordPress.com account. Log Out / Промяна )

Twitter picture

You are commenting using your Twitter account. Log Out / Промяна )

Facebook photo

You are commenting using your Facebook account. Log Out / Промяна )

Google+ photo

You are commenting using your Google+ account. Log Out / Промяна )

Connecting to %s