Java програмист Роберто Кортес - за изучаването на Java и основните влиятели

Роберто Кортес- Java разработчик с над десет години опит, ръководител на Coimbra JUG и основател на JNation Conference в

Португалия.

Каимбра кана— общност от програмисти, работещи на езикаJava. Обединява предимно програмисти от Коимбра и централната зона в Португалия. Coimbra JUG организира събития за Java и технологии, свързани с JVM (Java Virtual Machine, основната част от системата за изпълнение на Java - Hi-Tech) с цел развитие и популяризиране на този език. Най-известната конференция е JNation Conference, посветена на най-новите разработки в Java. Провежда се ежегодно в Коимбра.

За Java

- Кои са силните страни и основните аспекти на Java като език за програмиране?

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

- Java активно се променя, какви тенденции задават тон в тази област днес?

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

Нови тенденции на Java:

  1. Java JShell Interpreterза изучаване на езика и прототипиране на код.
  2. NodeJSза създаване на програми за настолни устройства и сървърни приложения без използване на браузър.
  3. Рамки за разработка на уеб и мобилни приложения:ReactJS, AngularJS, Meteor.js и др. Значително опростете разработката.

За работата на програмист

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

- Какво ще кажете само за блоговетеили някакъв друг вид уеб страница? Много хора започнаха по този начин и това е чудесен начин да правите програмиране. Започнах и с блог. Първо с HTML, който сам по себе си не е език за програмиране, но в крайна сметка започнах да създавам все по-модерни неща, които изискват от мен да използвам JavaScript, а след това и Java. Много хора започват с Python, което също е чудесно. Не е много трудно и можете да постигнете невероятни резултати.

- Какви технологии са необходими за изучаване от Java програмист?

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

- Трябва ли програмист да избере между пълен стек (универсален) разработчик и специалист?

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

- Има мнение, че в Java няма свободна практика и този език е предимно за корпоративно развитие. Изключение ли е Java Freelance?

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

- Наричате се страстен разработчик. Програмирането за вас главно ли е създаване или технически процес?

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

Относно общностите на Java

- Защо са необходими общности на Java и какво прави Jim на Coimbra, който ръководите?

- Аз ръководя общността на Коимбра JUG вПортугалия. Коимбра е малък град, така че всички в общността се познават. Хората обичат да се събират, за да споделят своя опит, впечатления и, разбира се, да слушат новините за случващото се в ИТ света. Организираме и конференция, наречена JNation. Това е еднодневно събитие, на което каним няколко от най-известните лектори в общността на Java.

- Кои ЮГ са най-известните и влиятелни?

- Бих номинирал LJC (Лондонска общностJava - „High Tech“) и SouJava (Бразилска потребителска общност на Java - „High Tech“). И двете от тези общности участват активно в подкрепа на JCP, AdoptOpenJDK или MicroProfile.

Процес на общността на Java (JCP)- Създаден през 1998 г., официален процес позволява на заинтересованите страни да участват в оформянето на бъдещи версии на спецификациите на езиковата платформа Java.

Java Development Kit (JDK)- свободно се разпространява от OracleCorporation е комплект за разработка на Java приложения, който включва компилатор, библиотеки със стандартни класове, примери, документация, различни помощни програми и система за изпълнение.

Микропрофил, (Микропрофил на Eclipse)е отворен стандарт, разработен в рамките на Eclipse Foundation от доставчици на EE сървъри, организации на трети страни и просто доброволци.

Други известни общности на JUG:

  1. JUG.ru (Санкт Петербург, Русия).Той провежда ежемесечни срещи в Санкт Петербург, където Java експерти изнасят лекции по най-актуалните теми.
  2. Фили Джуг (Филаделфия, САЩ).Съществува повече от 15 години и провежда курсове за напреднали за Java програмисти във Филаделфия.
  3. Morocco JUG (Маракеш, Мароко).Провежда годишни конференции и курсове за обучение онлайн и офлайн.

- Вие също сте член на Java Champion. Как е взаимодействието му с Java разработчика, Oracle?

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

- Коя от редовно провежданите конференции на разработчиците на Java е най-интересна и значима?

- Сега навсякъде се провеждат интересни конференции. Повечето разработчици могат да намерят събития на тяхното местоположение, така че зоната на покритие е добра и тя продължава да нараства всяка година. Винаги можете да разчитате на конференциите на JNation, jPrime или JBCNConf, които се появиха само преди няколко години, но бързо стават примерни.

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

JBCNConf- годишна Java конференция, организирана отсдружение с нестопанска цел Barselona JUG, проведено в Барселона. Конференцията обсъжда JVM езици (Java, Scala, Clojure, Groovy, Kotlin), функционално програмиране, тестване, дизайн, блокчейн, машинно обучение, изкуствен интелект и много други.

– Кое оказа най-голямо влияние върху развитието ви като професионалист?

- Бих казал, че първите няколко конференции. Това даде възможност да се запозная с невероятната общност на Java и съм благодарен на няколко души, които ме насочиха или ме принудиха да правя нещо. Спомням си, че се оплаках, че общността в Португалия не е много активна и Адам Бийн ми каза: „Защо не създадеш своя собствена?“ Така се роди общността на Коимбра JUG. Андрес Алмирарай и Хедър Ван Куйра ме запознаха в Хакергартен, където започнах да допринасям за проекти с отворен код. И накрая, Дейвид Блевинс беше мой ментор и ми помогна да растя както технически, така и психически. Но най-важното, той настоя за себе си, за да стане ментор на други хора. Това се опитвам да правя сега.

Адам Бин (Германия)- консултант, обучител, разработчик, член на експертната група Java Champion и много други, свързани с Java.

Андрес Алмирей— Java/Groovy разработчик и Java Champion, повече17 години опит в дизайна и разработката на софтуер. Той разработва уеб и настолни приложения от ранните дни на Java. Член-основател на проекта Griffon и общността Hackergarten.

Хедър ван лек- Председател на JCP, организатор на общностни конференции на Hackergarten, посветени на Java технологиите.

Дейвид блевин- основател на проектите Apache TomEE, OpenEJB и Geronimo, член на експертните групи EJB 3.2 (JSR 345) и Java EE 7 (JSR 342), автор на материали за разработка на компонентен софтуер.