JVM – DevStyleR https://devstyler.bg Новини за разработчици от технологии до лайфстайл Thu, 23 Feb 2023 09:34:00 +0000 bg-BG hourly 1 https://wordpress.org/?v=6.5.5 SapMachine Vitals предоставя статистически данни за JVM https://devstyler.bg/blog/2023/02/22/sapmachine-vitals-predostavya-statisticheski-danni-za-jvm/ Wed, 22 Feb 2023 12:10:25 +0000 https://devstyler.bg/?p=118575 ...]]> SapMachine, downstream distribution на OpenJDK, представи нов tool за мониторинг, SapMachine Vitals, който поддържа съкратено history на статистическите данни за операционната система и JVM статистики.

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

Vitals е комбинация от инструментите на операционната система sysstat и статистиката на Java Virtual Machine (JVM). Данните се извличат на всеки десет секунди по подразбиране и се съхраняват в буфер за десет дни в JVM. Буферът съдържа по-подробна информация за последния час. Макар че режийните разходи на Vitals са сравнително ниски с около 300 Kb потребление на памет и малко потребление на процесора, все пак е възможно да деактивирате функцията с командата -XX:-EnableVitals, написаха Infoq по темата.

Повече информация по темата можете да откриете на международното издание на сайта ни DevStyleR.IO – SapMachine Vitals provides JVM statistics

]]>
OpenJDK Предлага Проект за Сливане на GraalVM Native Compilation https://devstyler.bg/blog/2022/12/20/openjdk-predlaga-proekt-za-slivane-na-graalvm-native-compilation/ Tue, 20 Dec 2022 11:45:06 +0000 https://devstyler.bg/?p=105120 ...]]> OpenJDK предложи проект – Galahad, който има за цел обединяването на някои части от кодовата база на GraalVM Community Edition в OpenJDK.

Това е най-новата разработка в рамките на дългогодишните усилия за осигуряване на възможност за компилиране на приложенията на Java в машинен код преди изпълнението на програмата. И въпреки че подобна идея би изглеждала странно, едно от първите неща, които младшият Java разработчик научава е, че “Java не се компилира до машинен код, а до JVM байткод”.

За изпълнението на платформата Java се разчита на мощно динамично време за изпълнение – JVM. Това време за изпълнение дава възможност за динамични техники, като например зареждане на класове и отразяване, които нямат аналог в компилираните езици за предварително време (AOT). Именно това е и отправната точка за много от силните страни на Java.

Цялата новина може да прочетете на международното издание DevStyleR.IOOpenJDK Proposes Project to Merge GraalVM Native Compilation

]]>
Бъдещето на Java, Java разработчиците и здравословната конкуренция https://devstyler.bg/blog/2021/11/12/za-badeshteto-na-java-java-razrabotchitsite-i-zdravoslovnata-konkurentsiya/ Fri, 12 Nov 2021 09:31:31 +0000 https://devstyler.bg/?p=52786 ...]]> От Първо Лице: Росен Иванов, Senior Software Engineer в REWE digital

Завърших в ПМГ “Васил Друмев” Велико Търново с профил “Математика”. Там се запознах с основите на програмирането, а след това продължих образованието си в ТУ София, специалност КСТ. Още във втори курс започнах работа в софтуерна фирма, така успях да компенсирам огромната разлика между това, което ти преподават в университета и реалната практика. Колебаех се в каква насока да продължа академичното си развитие, исках да получа знания и да подобря организацията на работата ми, затова завърших Индустриален мениджмънт, отново в ТУ София.

Програмирал съм на най-различни езици, като започнах с Pascal, Delphi, PL/SQL, след това продължих с JVM езици, Javascript. Не споделям разбирането, че езикът е от най-голямо значение за развитието на човек, а по-скоро проблемите и предизвикателствата, с които му се налага да се справи в работата. Обичам елегантните и разбираеми решения и тъй като вариантите за всеки един проблем са много, не бих казал, че имам любима технология.

Стартът, Java и … достатъчни ли са познанията по 1 програмен език

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

Имах късмета да стана бързо част от интересни компании и проекти, благодарение на които натрупах ценен опит, понякога по трудния начин. Определено мога да кажа, че си заслужаваше поради факта, че всички трудности, с които се сблъсках, изградиха характера ми. Моят опит, обаче, не се ограничава само до Java. В тази връзка не съветвам никого да разчита единствено на един език, защото в днешно време има толкова много заслужаващи внимание езици за програмиране, които да бъдат разучени: Go, JVM езици – Kotlin, Scala, Groovy, Javascript / Typescript, всеки от които разрешава различни задачи по елегантен и оптимален начин.

Как се протичат стандартните Dev интервюта в България?

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

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

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

Какво е важно да попита интервюиращият?

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

Необходими ли са тестове за издръжливост на кандидата?

Има компании, които не само тестват техническите умения на кандидата, но и неговата/нейната издръжливост, като правят интервютата тежки и излишно дълги. Едно интервю, което продължава половин работен ден, и през което кандидатът преминава през различни интервюиращи, многобройни задачи и кратки почивки, се оказва прекалено изтощително и доста неефективно според мен. Да, в крайна сметка компанията ще разбере по-добре дали кандидатът може бързо да се концентрира и да „оцелее“ в процеса, но на каква цена?! Има много по-ефективни начини за оптимизиране на процеса на техническото интервю, които ще споделя с вас по-нататък.

За какво да следят кандидатите?

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

“ЗА” индивидуалния подход

В REWE digital се фокусираме върху опита на кандидата, като взимаме под внимание типа длъжност, за който кандидатства. Конкретните технически въпроси не са от първостепенна важност. Вместо това, ние центрираме интервюто около темите и технологиите, с които кандидатът е запознат, използвайки времето, за да проведем ефективна дискусия. Всеки кандидат е уникален и на база неговия/нейния опит, подхождаме индивидуално, за да достигнем до различни видове дълбочина на техническите разговори. Ако задачата е да се реши проблем, ние се фокусираме върху разбирането на кода или какви са идеите зад кода, който трябва да бъде написан. За нас е важно да разберем как кандидатът подхожда към решаването на конкретната задача и какви методи използва, за да се справи с проблема. В крайна сметка, интервюто винаги е двустранен процес и двете страни трябва да усетят връзката помежду си.

До каква позиция може да достигне Java програмист?

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

Имаме вътрешна програма за растеж, наречена “Path of Excellence” (Пътят към съвършенството), към която всеки програмист може да се присъедини и да придобие задълбочени познания за разработването на софтуер в една конкретна технология (пр. Java), за да стане champion (шампион) или дори master (водещ експерт) в нея.

За мен е ценно да се развивам като професионалист, да научавам и тествам нови технологии, каквито използваме в технологичния пакет (tech stack) на компанията.

За бъдещето на Java, Java разработчиците и здравословната конкуренция

Доста съм изумен от факта, че нашият технически директор в Кьолн – Робърт Цорес е един от основателите на езика за програмиране Java, който има дълга история на развитие.

Въпреки че Java е стар език за програмиране, той все още е жив и динамичен. В момента има нова версия на всеки 6 месеца, което го прави доста гъвкав за иновации и промени. Последните нововъведения като Records, Sealed types, Pattern matching придвижват Java напред в посока data-oriented model. По този начин езикът наваксва с функционалности, които предлагат други Jvm езици. Има интересни проекти, които са в развитие, например Looming – реактивно програмиране с модел, който не се базира на нишки – един основен проблем в Java, който различни езици и frameworks решават.

Разработчиците на Java имат чудесна възможност да се занимават със система, която непрекъснато се подобрява. Нека не забравяме, че Java не е просто език – виртуалната машина играе ключова роля за успеха. Примери за това са оптимизация на паметта, която се използва от String, времето за компилиране и стартиране, дължащи се на Garbage collector G1 – постоянно подобряване между версиите, добавяне на нов ZGC с “паузи” от една или две милисекунди. Всичко това може да се комбинира и с други езици, работещи с JVM: Kotlin, Scala, Groovy и други, така че разработчикът е свободен да комбинира в един проект езиците и библиотеките, за да изгради решение напълно съобразено със своите нужди, ресурси и опит.

Java еволюира постоянно, взема неща от по-новите езици и засега ги имплементира успешно – примери за това са Scala и Kotlin. Причината за това е здравословната конкуренция, която е налице в момента.

 

“Няма хора на пазара” – Проблемът и … решението

Често съм чувал фразата „няма хора на пазара“. Според мен въпросът се свежда до инвестиране в хора и развитие на техния набор от умения. Наясно съм, че има много добре подготвени служители (готови кадри), но е трудно за всяка компания да спечели доверието им, когато ги потърси с готова оферта за работа. Затова приветствам всички компании, които инвестират в развитието на своя персонал, дори от нулата. Вършите много добра работа и ви моля да продължите да го правите. Смятам също, че е много важно служителите да поддържат личната си мотивация на високо ниво. Това е моментът, в който компанията може даде тласък и да ги помогне. В REWE digital имаме страхотни примери на наши колеги, завършили софтуерни академии, които се присъединиха към нас с базови познания за технологичния стак, но с висока мотивация. С малко помощ и подкрепа от наша страна, те показаха, че всичко е възможно с правилното мислене и отношение.

 

]]>
Мани Саркар: Технологичното общество се обединява отново https://devstyler.bg/blog/2021/01/25/mani-sarkar-tehnologichnoto-obshtestvo-se-obedinyava-otnovo/ Mon, 25 Jan 2021 10:10:12 +0000 https://devstyler.bg/?p=38822 ...]]> Мани Саркар- страстен софтуерен разработчик на свободна практика главно в Java/ JVM пространството базиран в Обединеното кралство. Той е Java шампион, посланик на Oracle Groundbreaker и лидер в общностите на софтуерните разработчици. Мани Саркар вижда себе си да работи в области свързани с Java, Hotspot, GraalVM, Truffle, VMs, Performance Tuning, Data, and AI/ML/DL/NLP. Последвайте профилите му в Twitter @theNeomatrix369 и LinkedIn.

Вие сте страстен разработчик главно в Java и JVM пространството, можете ли да обясните накратко защо избрахте тази тема за вашите лекции? Какво целяхте с тях?

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

Тази година Java2Days беше организирано толкова бързо с много кратко предизвестие. Предупредих вашите колеги, че вероятно много разработчици и оратори няма да имат готови теми за разговор и ще говорят за всичко, но аз бих желал да изляза с нова тема на разговор. Щастлив съм да присъствам на общите дискусии, но бих искал и да представя нови неща. Не повтарям често разговори. След като направих това няколко пъти тази година не ми се струва естествено да повтарям вече казани неща. Ако говоря, това ще в нов и по-напреднал стил. Надявам се това отговаря на въпроса ти.

Как се чувствате по време на тези виртуални разговори? Свикнахте ли с това? Липсва ли ви взаимодействието лице в лице с публиката? Какви са предизвикателствата и как се справяте с тази ситуация?

Добър въпрос. Работя на свободна практика от вкъщи. Почти всичките ми взаимодействия с клиенти през последните три години са онлайн. Клиентите ми са базирани навсякъде. Дори ако някои от тях са в Лондон, те нямат офис. Останалите са извън Обединеното кралство и не се срещаме лично. Знаете, че е по-практично да се проведе конферентен разговор и поради промените, които се случват от началото на тази година за мен това е съвсем естествено нещо. Не трябваше да променям нищо в ежедневието си. Нещото, което се промени, беше, че ходех в града за срещи, събития и конференции като тази  и това спря масово през последните 9 месеца, което е голяма промяна. Харесва ми да се срещам с нови хора, да говоря с тях и да общувам с тях, защото нищо не може да замени разговорите лице в лице. Можем да проведем няколко виртуални разговора с практична цел, но в края на деня пак ще искаме да се срещнем с хора, да пием кафе, да обядваме или вечеряме или да споделим нещо. Това са нещата, които определено ни липсват, но може би ако виртуалните конференции и събития се трансформират, всъщност можем да вкараме  VR технологиите, където можем да усетим събеседника си. Не знам какви са възможностите и кои са добрите и не толкова добрите страни на тези технологии, но засега това се чувства различно, защото съм свикнал да се срещам с хора на конференции. В началото конференциите за мен бяха най-вече да отида и да присъствам на разговорите и да се уча. В крайна сметка конференциите прераснаха повече в изграждане на бизнес връзки отколкото обикновени разговори. Сега се уча, че с тези виртуални срещи не е нужно да присъствам лично на събития и конференции. За жалост обаче така не успявам да се срещна и да общувам с хора. Когато завърши webinar-a, всички излизат извън линия, защото имат да правят нещо друго, всеки има други задачи и ежедневието им е толкова пълно, че нямат свободно време.

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

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

Аз съм в тази ситуация като и всички останали, не в някаква по-специална. Важното  е да продължите да правите това, което правите и да не се разсейвате, защото има толкова много странични фактори, които могат да ни отвлекат вниманието. Да, отнема време и усилия, за да се свикне. Да, искаме да се срещнем с други хора, но сега ограниченията са факт и трябва просто да работим с тях, а не срещу тях. Останете съсредоточени! Това е чудесен момент да правите неща, които не сте могли да направите преди като например четене на книга. Стойте далеч от компютъра, защото прекарваме много време с него. Не правя това, което предлагам, но за всички останали, които не са свикнали с тази действителност, съветвам да останат повече офлайн, отколкото онлайн. Бъдете онлайн само ако е необходимо. Има много офлайн дейности, които могат да ви отделят от случващото се за известно време. Мисленето за ограниченията и проблемите от рода на какво ни липсва и какво искаме, не ни кара да се чувстваме по-добре. Опитайте се да стоите настрана от това. Аз се старая да съм зает. Правя много неща. В известен смисъл това  е страхотна възможност за мен, защото съм по-малко притеснен и разсеян от външния свят, въпреки че все още трябва да си взаимодействам с него. Но аз също имам свое ежедневие, правя списък със задачи както на хартиен, така и в цифров вид. Бъдете заети и проследявайте задълженията си. Моят списък със задачи е като проверка за мен, за да видя колко добре се справям и колко далеч съм стигнал с нещата, които искам да направя. Не мисля толкова много за това, които се случва около мен, въпреки че знам, че ограниченията са там и когато изляза навън, за да пазарувам или на разходка, виждам какво се случва около мен. Но когато свърша със задълженията и се прибера у дома, аз знам, че съм се върнал към рутината си и понякога просто си почивам.

Спете достатъчно! Това е много важно!

Знам, че някои от хората на Java2Days не разбират това. През последните няколко седмици вероятно не сте спали достатъчно заради дългите работни дни. Един от вашите колеги сподели, че е спал от 4 сутринта до 7 сутринта.

Скоро ще излезете от този цикъл, когато конференцията приключи. Не спете 3 часа, спете около 6-7.

Хранете се здравословно, останете спокойни, не изпадайте в паника и се опитайте да не се разсейвате от нещата, които се случват около нас. Ако няма какво да правите, вземете книга. Това е най-доброто, което мога да препоръчам!

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

Да, с нетърпение го очаквам, моля, организирайте още конференции като тази и следващата година, защото все още не знаем кога ще се върнем към нормалния начин на живот. Ако искате да сте заети и да организирате друго събитие като това през следващите няколко месеца, ще бъда повече от щастлив да присъствам. Сега имате всички тези различни канали като Brella, InEvent, Zoom и т.н., така че всичко това е налице и вие знаете как работи. Общността се формира отново, можете да взаимодействате с тях. Тази година стигнахте 2000 зрители! Обикновено когато идвах в София имаше около 500-600 посетители на сесия*. Не знам дали някога сте имали 1000 души.

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

Да, и за много кратък период от време свършихте много впечатляваща работа!

* Последното участие на Мани беше през 2014 г. 

]]>
Kotlin 1.4 RC пристигна със сериозни обновления https://devstyler.bg/blog/2020/07/31/kotlin-1-4-rc-pristigna-sas-seriozni-obnovleniya/ Fri, 31 Jul 2020 07:29:18 +0000 https://devstyler.bg/?p=33320 ...]]> Kotlin 1.4 е основен ъпгрейд на разработения от JetBrains статично типизиран език, първоначално изграден за JVM и достигна етап RC, с подобрена поддръжка на IDE и визуализация на Node.js към API.

Kotlin 1.4 RC, публикуван на 27 юли и предлага подобрения в поддръжката на IDE за DSL скриптове на Gradle Kotlin (*.gradle.kt файлове), включително изрично зареждане на конфигурации на скриптове, било като щракнете върху Load Gradle Changes или реимпортиране на проекта Gradle. Преди това, когато разработчиците добавиха нов плъгин към buildscript или плъгин блока на build.gradle.kts, новата конфигурация на скрипта се зарежда автоматично във фонов режим – процес, който често затруднява IDE производителността.

Kotlin 1.4 RC добавя и действие в IntelliJ Idea 2020.1 IDE, наречено Load Script Configurations, което зарежда промени в конфигурациите на скриптове Gradle, без да актуализира целия проект, като по този начин отнема по-малко време. Също за поддръжка на IDE gradle.kts по-доброто отчитане на грешки е активирано, като Gradle връща цялата информация за грешки и я показва в прозореца на инструмента за изграждане.

Визуализацията на Kotlin 1.4 RC за връзки за API на Node.js, kotlinx-nodejs, осигурява безопасен тип достъп до API на Node. Въпреки че преди това беше възможно да се насочи към Node.js, новите връзки отключват пълния потенциал на целта.

 

]]>
Oracle представи Java 14 https://devstyler.bg/blog/2020/03/19/oracle-predstavi-java-14/ Thu, 19 Mar 2020 12:18:31 +0000 https://devstyler.bg/?p=27826 ...]]> Java 14 съдържа и няколко първи стъпки към мачването на патърни, което трябва да се превърне в основна характеристика с течение на времето.

Заедно с това e стандартизирана версия на switch expressions за Java. Очаква се тези функции да бъдат надградени в бъдещите версии на Java и да бъдат координирани в OpenJDK от Project Amber.

Друга функция, която може да се окаже значителна е JFR Event Streaming, която разширява технологията на Java Flight Recorder. Тази функция отваря вратата за инструменти за наблюдение за лесно събиране на JFR данни от цели клъстери JVM, вместо съществуващия подход на JFR за използване на файл за всяко JVM.

]]>
Kotlin изпревари Scala и Clojure по популярност сред JVM https://devstyler.bg/blog/2020/02/06/kotlin-izprevari-scala-i-clojure-po-populyarnost-sred-jvm/ Thu, 06 Feb 2020 10:10:00 +0000 https://devstyler.bg/?p=26766 ...]]> Докато разнообразието от JVM езици нараства през последните няколко години, голямата част от потребителите на JVM все още използват Java като основен език.

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

Въпреки силните предпочитания към Java, използването на други езици на JVM също нараства. Особено Kotlin придоби голяма популярност през последните няколко години. Всъщност Kotlin нараства в няколко технологични доклада с 5%.

]]>
Вернер Кайл: Не мисля, че скоро Java ще претърпи драматична промяна https://devstyler.bg/blog/2020/01/22/verner-kajl-ne-mislya-che-skoro-java-shte-pretarpi-dramatichna-promyana/ Wed, 22 Jan 2020 12:05:07 +0000 https://devstyler.bg/?p=26477 ...]]> Вернер Кайл работи като Project Manager и Software Architect, а освен това се включва в длъжности като консултант и анализатор на водещи технологии свързани с банкиране, застраховки, медийна и публична дейност. Той притежава и артистична черта, която по негови думи се сработва добре със софтуерната разработка… 

Г-н Кайл, ссвен програмирането имате и странична работа, която е свързана с писане на романи и текстове на песни. Разкажете малко повече…

Да. За жалост романите са малко или много на заден план, защото работя основно по втория си видео урок, който разглежда Jakarta EE. Предният беше свързан с оптимизирането на работата с Java EE, така че, бих казал, че съм повече в нехудожествена зона към момента.

А относно песните? Каква е връзката между музиката и програмирането?

Има много примери за успешно взаимодействие между двете. Например Ед Бърнс от JavaOne има група и свири на саксофон. Други негови колеги пеят, някои свирят на барабани. Да, не обикалят по турнета, но пък поне практикуват често и то не в гаража вкъщи. 

Сложно ли се постига комбинацията? 

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

Доколкото разбрах, Java2Days конференцията Ви е добре позната…

За първи път бях на Java2Days през 2010 г., а преди две години участвах на Speakers of all time – лектори, които бяха селектирани от аудиторията. Определено сега конференцията е по-голяма и прави впечатление, че дори огромна конференция като DevOps не е позиционирана толкова добре и централно. Тук определено има много хубава гледка. 

По какви проекти работите и кой се отличава сред останалите? 

Трудно ми е да кажа, защото съм участвал в много различни проекти. Например, преди много години, през 2003 г., помагах на Sony да се съревновават с Apple iTunes. За жалост, не се получи особено добре за тях и след около седем години се наложи да закрият своя онлайн музикален магазин. Също така, този проект се рекламираше в почти всеки McDonalds в Германия – раздаваха се безплатни ваучери за Sony Connect Music Store.  

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

Всичко, което е базирано на JVM. Java EE, Jakarta EE, Weblogic. Дори имах възможността да използвам Java Units of Measurement където бях Maintenance Lead. Първата версия на този стандарт използвах в голяма Container Terminal Control System, която Siemens разработиха за Maersk. Най-напред системата бе използвана тази бе на пристанището на Танжер, Мароко. Това бе всъщност един от Java стандартите ни, които бяха използвани в голям проект. 

Т.е. основно работите с Java? 

Да, но не винаги работата го позволява. Например, преди този проект за Maersk, пак работихме с тях, като тогава трябваше да разработваме DevOps операции, още преди да съществува Docker. За тази цел ни трябваше Python. Аз лично нямам голям опит с този програмен език, така че да създам изцяло нова Python програма от нулата. Но за щастие работех с голям екип, съдържащ много талантливи разработчици, на които аз помагах с интеграцията на контейнери из цялата Java Enterprise среда. Всичко от IBM, Oracle, WebLogic или дори Play Framework, трябваше да работи. Та, аз участвах в тази интеграционна насока. Но езика, който използвахме бе Python. Освен това ми се налагаше да работя и с Shell script в DevOps. Някой път, когато програмирам pure functional development използвам език, който работи на JVM – Java, Groovy, Kotlin. Но в DevOps и test automation имаме JavaScript, Node.js, Angular или Python. 

Ще претърпи ли Java сериозна промяна в близко време?

Определено не мисля, че Java ще претърпи драматична промяна и ще ни изненада скоро. В Java 8 и 9 имахме много нови модификации, но не бих очаквал в близко време т.нар. “следващо голямо нещо”. Поне не и както беше с Java 5. 

Интервюто проведе Пламен Михайлов

 

]]>
ServiceTalk е с отворен код https://devstyler.bg/blog/2020/01/02/servicetalk-otvori-koda/ Thu, 02 Jan 2020 12:24:27 +0000 https://devstyler.bg/?p=26060 ...]]> Apple отвори кода на ServiceTalk, фреймуъркът за мрежови апликации в JVM, който осигурява обща и разширяема мрежова абстракция, изградена върху Netty. Той е замислен да подобри абстракциите на ниско ниво, предоставяни от Netty. Фреймуъркът предоставя по-насочени API на по-високо ниво за често използвани протоколи като HTTP / 1.x, HTTP / 2.0 и gRPC с постоянен мрежов стак и набор от функции, които включват балансиране на натоварването от страна на клиента и интеграция на откриване на услуги.

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

Целта на отворения код на ServiceTalk е да предостави градивни елементи, които биха дали възможност за принос от Java общността. С предварително установените отношения на Apple в общността на Java, те се надяват да насърчат подобна общност за ServiceTalk.

Всеки може да започне със ServiceTalk, като изучава HTTP и gRPC примери за асинхронна и блокираща среда.

]]>
Vilnius JUG: Технологичните общности в Литва растат https://devstyler.bg/blog/2019/04/30/vilnius-jug-tehnologichnite-obshtnosti-v-litva-rastat/ Tue, 30 Apr 2019 09:09:30 +0000 https://devstyler.bg/?p=18331 ...]]> Завеждаме ви във Вилнюс, Литва, където ежемесечно се организират срещите на местната Java технологична общност. Двама от организаторите на групата – Алексей и Вайдас, разказаха за активността на юзър групите в страната им.

Какви хора обединява литовската Java технологична общност “Vilnius JUG”?

Алексей: Идеята за организиране на литовска Java User Group във Вилнюс се роди през есента на 2011 г., по време на белгийската Devoxx конференция. Малко по-късно, първият ни мийтъп се проведе през март 2012 г. С помощта на групата ние се целим да привличаме различни хора, като също така се стараем да имаме разнообразна общност. Основателите на идеята са четирима – Вайдас Пилкаускас, Каспарас Рудокас, Миндаугас Жакшаускас и аз – Алексей Шипулиа

Наистина ли Java обединява хората?

Алексей: Да! На хората им харесва да взимат участие в срещите ни и оценяват неформалните дискусии преди и след събиранията ни.

С колко се увеличихте през последните години?

Алексей: Преди 7 години, по време на първия ни мийтъп, бяхме само 15 участници в групата. Сега имаме една силна общност от над 1000 Java и JVM ентусиасти!

Стараем се да се срещаме веднъж месечно, всяка втора сряда, но много зависи от това с какви лектори разполагаме. На всяка среща имаме около 100-200 души като съотношението мъже:жени, можем да кажем, че е приблизително 80:20.

Вайдас: Веднъж организирахме събитие за Деня на жената и смея да твърдя, че имахме над 50% женска аудитория. Но като цяло половото съотношение е проблем, който е доста сложен за разрешаване. И този проблем не се отнася само за публиката на мийтъпите, но и за лекторите доброволци, които са склонни да презентират.

Хората в Литва активни ли са в участието си в технологични общности?

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

Какво е новото при вас?

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

А коя беше най-посещаваната ви среща?

Алексей: Две от най-популярните ни срещи се случиха преди няколко години, когато поканихме Венкат Субраманиам и Юрген Ойлер.*

*(Редакция на DevStyleR: *Венкат Субраманиам е популярен в технологичните среди не само със своите участия като лектор на конференции за разработка на софтуер, но и с компанията си за трейнинг, консултация и други обучения “Agile Developer”. Юрген Ойлер е съосновател на Spring Framework с богат опит като софтуерен архитект. Той е посещавал България като лектор на мащабните технологичните конференции Java2Days и CodeMonsters.)  

Организирате ли събития или инициативи от друг характер?

Алексей: Към този момент организираме само мийтъпи.Вайдас: Всеки един от нас индивидуално участва и в други мийтъпи и конференции. Аз, например, тази година съм един от организаторите на международната конференция “You Gotta Love Frontend”.

Как поддържате JUG-a финансово независим и безплатен?

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

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

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

Планирате ли да посетите България скоро?

Вайдас: Мисля, че една добра причина е достатъчна, за да посетим държавата ви! Можете да ни откриете във Фейсбук и Twitter (@vilniusjug) и да ни пишете, в момента си търсим лектори и смятаме, че това е нашата добра причина да посетите града ни Вилнюс.

Интервюто проведе Вяра Стефчева.

]]>