Java programmer Roberto Cortez - about learning Java and major influencers

Roberto Cortez- Java developer with over ten years of experience, head of Coimbra JUG and founder of JNation Conference in

Portugal.

Coimbra jug— a community of programmers working in the languageJava. Unites primarily programmers from Coimbra and the Central Zone in Portugal. Coimbra JUG organizes events on Java and technologies related to the JVM (Java Virtual Machine, the main part of the Java runtime system - Hi-Tech) with the aim of developing and popularizing the language. The most famous conference is the JNation Conference, dedicated to the latest developments in Java. Held annually in Coimbra.

About Java

- What are the strengths and main aspects of Java as a programming language?

- Stable and expressive language. For me, the best thing about Java is the ecosystem. There are a huge number of open source libraries that can be used to simplify application development. They are well documented and tested, so you can focus on real business needs.

- Java is actively changing, what trends are setting the tone in this area today?

- Of course, the cloud. And this is a very interesting task for Java, given the fact that the language already existed long before we got the cloud everywhere and for everyone. So he was not ready for this, and he also had to adapt. If you look at the history of Java, major releases appeared every three to four years. Now the language has adapted to release scheduled releases every six months to better meet today's and tomorrow's challenges.

New Java trends:

  1. Java JShell Interpreterfor learning the language and prototyping code.
  2. NodeJSto create programs for desktop devices and server applications without using a browser.
  3. Web and mobile app development frameworks:ReactJS, AngularJS, Meteor.js and others. Significantly simplify development.

About the work of a programmer

- What would you recommend to novice programmers for immersion in a specialty and job search?

- How about just bloggingor some other kind of webpage? Many people started this way, and this is a great way to do programming. I also started with a blog. First with HTML, which in itself is not a programming language, but in the end I started to create more and more advanced things that required me to use JavaScript, and then Java. Many people start with Python, which is also great. It is not very difficult, and you can achieve amazing results.

- What technologies are required to be studied by a Java programmer?

- Each programmer needs a set of basics, andthis is not only for Java, which will help him to form a general idea of ​​how everything works. I think this list can be challenged, but I would include algorithms, networking, operating systems, databases, distributed systems, security, and math in it.

- Should a programmer choose between a full stack (universal) developer and a specialist?

- Now it is extremely difficult to concentrateon a certain technology, because everything is developing and changing very quickly. But it’s even more difficult to keep up with a lot of technologies. You need to be open to everything, especially at the beginning of your career, and decide what you like best, and then specialize in something further.

- There is an opinion that there is no freelance in Java, and this language is primarily for corporate development. Is Java Freelance an Exception?

- I do not think so. Judging from my experience, when companies hire freelancers, they are waiting for a person with a lot of experience who can come and help them cope with problems. Focusing on a specific technology gives such an experience and allows you to specialize. Being an experienced specialist, you can work both as a freelancer and in an organization.

- You call yourself a passionate developer. For you, is programming primarily a creation or a technical process?

- Programming involves a lotcreativity. When you want to do something, there are many ways you can go. It happens that this method does not exist at all, you need to create it yourself. You have to think, try options, fail and succeed. On the other hand, in technical terms, our field is developing rapidly, it is necessary to constantly engage in research, study new developments and improve skills. You must be passionate about what you do to keep up with the times, the latest news and the best solutions.

About Java Communities

- Why are Java communities needed and what does the Coimbra JUG that you lead do?

- I head the Coimbra JUG community inPortugal. Coimbra is a small town, so everyone in the community knows each other. People like to get together to share their experiences, impressions and, of course, listen to the news about what is happening in the IT world. We are also organizing a conference called JNation. This is a one-day event where we invite several of the most famous speakers in the Java community.

- Which JUGs are the most famous and influential?

- I would nominate the LJC (London CommunityJava - “High Tech”) and SouJava (Brazilian Java User Community - “High Tech”). Both of these communities are actively involved in supporting JCP, AdoptOpenJDK or MicroProfile.

Java Community Process (JCP)- Formed in 1998, a formal process allows interested parties to participate in shaping future versions of the Java language platform specifications.

Java Development Kit (JDK)- freely distributed by OracleCorporation is a Java application development kit that includes a compiler, standard class libraries, examples, documentation, various utilities, and an execution system.

Microprofile, (Eclipse Microprofile)is an open standard developed within the Eclipse Foundation by EE server vendors, third-party organizations and simply volunteers.

Other famous JUG communities:

  1. JUG.ru (St. Petersburg, Russia).It holds monthly meetings in St. Petersburg, where Java experts give lectures on the most pressing topics.
  2. Philly JUG (Philadelphia, USA).Has been around for over 15 years and has been conducting advanced training courses for Java programmers in Philadelphia.
  3. Morocco JUG (Marrakech, Morocco).Holds annual conferences and training courses online and offline.

- You are also a member of the Java Champion. How is his interaction with the Java developer, Oracle?

- At its core, Java Champions is exclusivea group of enthusiastic technology leaders and communities that are promoted by the community itself. We provide feedback, ideas, direction and guidance that will help Oracle expand the Java platform and generally promote the language worldwide. The most interesting thing in this group is that although it is supported by Oracle, it itself is completely independent. Therefore, we can both freely praise and criticize when appropriate.

- Which of the regularly held conferences of Java developers is the most interesting and significant?

- Now interesting conferences are being held everywhere. Most developers can find events at their location, so the coverage area is good, and it continues to grow every year. You can always rely on the JNation, jPrime or JBCNConf conferences, which appeared only a few years ago, but are quickly becoming exemplary.

jPrime- a conference that talks about Java,various languages ​​in JVM, mobile devices, web technologies and the best developments. The organizer is the Bulgarian community of Java developers. Held annually in May at the Sofia Technopark.

JBCNConf- annual Java conference organized bynon-profit association Barselona JUG, held in Barcelona. The conference discusses JVM languages ​​(Java, Scala, Clojure, Groovy, Kotlin), functional programming, testing, design, blockchain, machine learning, artificial intelligence and much more.

— What had the greatest influence on your development as a professional?

- I would say that the first couple of conferences. This made it possible to get to know the amazing Java community, and I am grateful to several people who directed me or forced me to do something. I remember complaining that the community in Portugal is not very active, and Adam Bean told me: “Why don't you create your own?” So the Coimbra JUG community was born. Andres Almirai and Heather Van Cuira introduced me to Hackergarten, where I began to contribute to open source projects. Finally, David Blevins was my mentor and helped me grow both technically and mentally. But, most importantly, he pushed for himself to become a mentor for other people. That is what I am trying to do now.

Adam Bin (Germany)- consultant, trainer, developer, member of the Java Champion expert group and many others related to Java.

Andres Almirey— Java/Groovy developer and Java Champion, more17 years of experience in software design and development. He has been developing web and desktop applications since the early days of Java. Founding member of the Griffon project and the Hackergarten community.

Heather van cure- Chairman of JCP, organizer of Hackergarten community conferences dedicated to Java technologies.

David blevins- founder of the Apache TomEE, OpenEJB and Geronimo projects, member of the EJB 3.2 (JSR 345) and Java EE 7 (JSR 342) expert groups, author of materials for component-based software development.