Васил Момчев е CTO в Ontotext и в момента ръководи технологичното развитие на продукта GraphDB. С програмиране и бази данни се занимава от над 15 години.  Преди събитието WTF is my JMV doing? си поговорихме с него за това какво му харесва в Java и уроците, които е научил след толкова години на писане на код. Отговорите може да ви изненадат!

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

Започнах да програмирам на Java преди 14 години, когато се присъединих към Ontotext. Първият ми проект беше писането на контекстно зависима граматика за език описващ представяне на знание. Ако трябва да бъда честен, не почувствах тръпка от нещо кардинално ново. Като професионалист това беше поредният език за разработка на софтуер. С времето обикнах не толкова Java като език, а изключително добрата виртуална машина, която си остава най-достъпната и зряла технология за разработка на платформено независим код.

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

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

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

Обръщайки се назад, не бих могъл да назова конкретно техническо предизвикателство, с което наистина да се гордея. В последните 15 години разработка на софтуер стана изключително социална дейност от ранните години на интернет. Хората учат нови библиотеки и платформи набързо в стил “след прочитане на документацията по диагонал Google-вай грешките/въпросите и се надявай да откриеш в Stack Overflow”. С оглед на това голяма част от предизвикателството е как да направим нашия софтуер възможно най-лесен и разбираем за използване от други хора.

Как го разреши?

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

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

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


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

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

Прочети още:
Ясен Янков: „Фен съм на простите и елегантни технически решения“
Разговор за .NET с Живко Петьов

Share This