Ивайло Кенов е в топ 150 на C# разработчиците в световен мащаб спрямо Open Source класацията на Git Awards. Той е създател на My Tested ASP.NET, който има повече от 900 000 сваляния в NuGet и е преподавател, подготвил повече от 2000 души в Telerik Academy и SoftUni. На събитието на 26-ти август „The Power of C# Expression Trees“, той ще изнесе лекция, в която ще засегне теми като: advanced C# Reflection Techniques, analysing a C# Expression Tree, building C# Statements Blocks at Run-time. Дни преди събитието му зададохме няколко въпроса. Ето какво разказа той:

Как започна да се занимаваш с .NET?

В интерес на истината – това беше първият програмен език, който учих сериозно. Опитвах се да задълбая и в най-малките тънкости и да науча всички възможни детайли. „Заигравал“ съм се с много езици като PHP, Java, JavaScript, GO, Ruby и т.н., но C# и .NET ми останаха на сърцето през цялото това време. Като цяло изборът на технологичен стек е силно субективен и е въпрос на много фактори – бизнес изисквания, налични човешки ресурси, лични предпочитания, но това, което ми харесва лично на мен в .NET, е силната типизация, голямата гъвкавост и производителността на програмиране.

Какво те мотивира в работата ти?

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


 

Събитие на фокус:

iOS Animation & Custom Presentations

 

 


Кое е най-голямото техническо предизвикателство, с което си се сблъсквал?

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

А как се справяш със сложните казуси?

Аз съм такъв леко луд човек, че когато имам проблем за разрешаване, не спирам да мисля за него докато не намеря точен и добре дефиниран отговор. В най-честия случай игнорирам всичко социално и не спирам да чета от ранна сутрин до късна вечер, докато не остана хипер доволен от резултата – било то книги или статии в Интернет. Рекордът ми е 18 часа пред Visual Studio. За щастие такива ситуации не ми се случват твърде често.

Какво би посъветвал всички, които сега започват да се занимават с .NET?

Основният ми съвет е да прочетат и научат за фундаменталните знания в програмирането като цяло, а след това в .NET и технологиите, вървящи с него. Могат и да поразгледат сорс кода на най-известните компоненти – примерно ASP.NET или Entity Framework – има много техники и похвати, които могат да се придобият от „големите“ в жанра. В крайна сметка с добрите основи се строи качествен и стабилен софтуер, а това трябва да е целта на всеки един програмист.

 

Стани част от потребителската група .NET. Абонирай се и ще ти изпращаме информация за всичко, което предстои в групата.

Визия: Личен архив

Прочети още:
„Основната работа на всеки един лидер е да стане излишен“ – Веско Колев, Director Software Engineering, Progress
Какво означава една система да е „reactive“? Основна концепция на Reactive programming

Share This