POPULARITY
An airhacks.fm conversation with Burr Sutter (@burrsutter) about: first computer: IBM PS/2 386SX funded by grandparents' Kona coffee sales, early passion for programming and problem-solving, self-taught C programming, database engine development as a student, transition from theater aspirations to computer science, work with Progress 4GL and Silverstream, shift to .net development, joining JBoss and Red Hat through acquisition, Mark Fleury's impactful "free don't suck" presentation, evolution of Java application servers and middleware technologies, enterprise service bus and SOA, impact of docker and kubernetes on the industry, Red Hat's adaptation to cloud-native technologies, development of quarkus, current interest in language models and GenAI, Java's longevity and adaptability, Quarkus' fast startup time and compatibility with legacy Java EE applications, work on Kubernetes and Quarkus, the importance of Java's "write once, run anywhere" principle, Java's performance compared to other languages Burr Sutter on twitter: @burrsutter
An airhacks.fm conversation with Phillip Krueger (@phillipkruger) about: early programming experiences with Visual Basic and Java, transition from actuarial science to computer science, first job at a bank working with Java Swing and RMI over CORBA, experience with J2EE and XML technologies, working with XML and XSLT, development of open-source Swing components, work on dotMobi sites for mobile phones in Africa, creation of API extensions for Java EE and MicroProfile, involvement in the MicroProfile GraphQL specification, joining Red Hat and working on quarkus, development of SmallRye GraphQL, improvements to OpenAPI support in Quarkus, work on Quarkus Dev UI, discussion about the evolution of Java application servers and frameworks, comparison of REST and GraphQL, thoughts on Java development culture in South Africa Phillip Krueger on twitter: @phillipkruger
An airhacks.fm conversation with ethauvin (@Erik C. Thauvin) about: Erik previously on: "#298 The bld Power User", running a high-traffic link blog using JSP and Tomcat, challenges with caching and performance, meeting Geert Bevin through discussions about URL encoding, evaluating and migrating his blog to the Rife framework, appreciating Rife's lean architecture and built-in utilities, the appeal and disappointment of Ruby on Rails, using lightweight Java application servers like Glassfish and Payara, avoiding heavy dependencies and XML configuration, generating XML with xdoclet, the advantages of Rife's templating system and code readability, Erik's journey with Kotlin and reasons for returning to Java, building a Kotlin URL encoding library with multiplatform support, the power of Kotlin's multiplatform capabilities, discussing the BLD build tool and its origins in simplifying build processes, the complexities of modern Java builds with dependencies compared to the simplicity of Java EE, considering Ant as an alternative to Maven, the idea of "Build as Code" and integrating build logic into applications, Erik's experience converting over 60 projects to bld, challenges of introducing new build tools in enterprise environments, Erik's automated blog posting system ethauvin on twitter: @Erik C. Thauvin
Overview Kito and Danno welcome Edwin Derks, a fellow Java Champion, MicroProfile and Jakarta EE contributor, and Principal Consultant at Team Rockstars IT, as their special guest. They delve into the new Jakarta Data specification, explore the Eclipse Starter for Jakarta EE, and discuss integrating JMS with Kafka. The conversation then shifts to the resurgence of server-side rendering (SSR) for web applications, the latest enhancements in Angular, and the impact of ElementInternals support in Safari for building HTML form-friendly and accessible Custom Elements. They also cover updates on Kotlin, JDK 22, Google's innovative #AI Generative Interactive Environments (Genie), and energy-hungry LLMs and water, alongside discussions about high-profile security breaches and Edwin's journey into open-source contributions. About Edwin Derks Principal Consultant, Team Rockstars IT Solving complex and strategic IT challenges is my passion. I've helped many customers modernize their software stack, increase their software release processes, and adopt cloud infrastructure. In these projects, I've also been building teams and coaching colleagues to realize the right and innovative solutions for the task at hand. Having a Java developer background, I specialize in Java-related software solutions. As a Java Champion, I'm passionate about gathering and sharing knowledge about anything related to the Java ecosystem and cloud-driven development in general. Therefore, I'm a contributor to open-source projects MicroProfile and Jakarta EE. I'm also a fervent and regular conference speaker, learning and sharing knowledge. In my spare time, I can often be in the gym or have a good time at dance parties or metal concerts. Global and Industry News Server Side Java - Jakarta EE 11 lookout - Jakarta Data (https://github.com/jakartaee/data) - Eclipse Starter for Jakarta EE (https://start.jakarta.ee/) - Is Server Side Rendering (SSR) dead or alive? Is one of the two options preferred? ;) - JMS Client for Confluent Platform (https://docs.confluent.io/platform/current/clients/kafka-jms-client/index.html) - Old school Java EE descriptors (https://jcp.org/aboutJava/communityprocess/mrel/jsr077/index.html) Frontend - Angular Developer Survey 2023 (https://blog.angular.io/angular-developer-survey-2023-86372317c95f) - ElementInternals and Form-Associated Custom Elements (https://webkit.org/blog/13711/elementinternals-and-form-associated-custom-elements/) Tools - Kotlin 2.0 Beta 3 (https://kotlinlang.org/docs/whatsnew-eap.html) AI/ML - LLMs: our future overlords are hungry and thirsty (https://microservices.io/post/generativeai/2023/10/09/our-future-overlords-are-hungry-and-thirsty.html) - Genie: Generative Interactive Environments (https://sites.google.com/view/genie-2024/home) Java Platform - JDK 22 Update (https://openjdk.org/projects/jdk/22/) Security - Mother of All Breaches Exposes 773 Million Emails, 21 Million Passwords (https://gizmodo.com/mother-of-all-breaches-exposes-773-million-emails-21-m-1831833456) - UnitedHealth hackers say they stole 'millions' of records, then delete statement (https://www.reuters.com/technology/cybersecurity/unitedhealth-hackers-say-they-stole-millions-records-then-delete-statement-2024-02-28/) Picking Edwin's brain Developer career and what to do with it - Developer Career Masterplan: Build your path to senior level and beyond with practical insights from industry experts (https://www.amazon.com/Developer-Career-Masterplan-practical-insights-ebook/dp/B0CFLBHZXZ/ref=sr_1_1?crid=3BGLOBFO11D0X&keywords=developer+career+masterplan&qid=1694763002&sprefix=developer+career+masterplan%2Caps%2C158&sr=8-1) - Jakarta EE Application Development - Second Edition: Build enterprise applications with Jakarta CDI, RESTful web services, JSON Binding, persistence, and security (https://www.amazon.com/Jakarta-Application-Development-applications-persistence/dp/1835085261/ref=tmm_pap_swatch_0?_encoding=UTF8&qid=&sr=) - Cloud-Native Development and Migration to Jakarta EE: Transform your legacy Java EE project into a cloud-native application (https://www.amazon.com/Cloud-Native-Development-Migration-Jakarta-EE/dp/1837639620/ref=sr_1_1?crid=37XNEEDK0WZP4&dib=eyJ2IjoiMSJ9.NWeOOeplaf0BH3QqMMa2xSKI_drFUzPg3jMB0_oGe40z-TL2gEGzompOas_ztKmo-eIbZeeNlsD0wST3JXxx6GLd0fAlk8uSXV9kvs5VxD9jMUU6U_QOvksOMLK0Rwor3am8bMlFnSuXP0qfZeBRJoGon7JtmHCxJFZtjflURISUVwiXZMq8TMgQbXZneC9idFP9klcxyt-wecOIU3ipXd43RWDLdMU38IgYOGMtzkc.jYy2vzobzZkFpkIQyqDsOrJsUzyj9NxzoaIgISP7iXk&dib_tag=se&keywords=Cloud-Native+Development+and+Migration+to+Jakarta+EE%3A+Transform+your+legacy+Java+EE+project+into+a+cloud-native+application&qid=1715457244&sprefix=cloud-native+development+and+migration+to+jakarta+ee+transform+your+legacy+java+ee+project+into+a+cloud-native+application+%2Caps%2C318&sr=8-1) Picks - Assistance AI for JetBrains (Danno) (https://www.jetbrains.com/help/idea/ai-assistant.html) - T-Pain (Danno) - https://www.youtube.com/watch?v=91ck0vJBygo - https://www.youtube.com/watch?v=CIjXUg1s5gc - NixOS (Danno) (https://nixos.org/) - GitHub - FiloSottile/mkcert: A simple zero-config tool to make locally trusted development certificates with any names you'd like. (Kito) (https://github.com/FiloSottile/mkcert) - PowerPoint (Edwin) (https://www.microsoft.com/en-us/microsoft-365/powerpoint) - Enterprise Architect version 16.1 | Sparx Systems (Edwin) (https://sparxsystems.com/products/ea/16.1/) - draw.io (Edwin) (https://app.diagrams.net/) - Miro (Danno) (https://miro.com/) - OmniGraffle (Danno) (https://www.omnigroup.com/omnigraffle/) Other Pubhouse Network podcasts - OffHeap (https://javaoffheap.com) - Java Pubhouse (https://javapubhouse.com) Events - Devnexus 2024 - April 9-11 - Atlanta, GA, USA (https://devnexus.com) - Great International Developer Summit - April 23-26th - Bangalore, India (https://developersummit.com/) - JNation - June 4-5th - Coimbra, Portugal (https://jnation.pt/) - NFJS: Gateway Software Symposium April 5 - 6, 2024 (https://nofluffjuststuff.com/stlouis) - NFJS: New England Software Symposium May 3 - 4, 2024 (https://nofluffjuststuff.com/boston) - NFJS: Greater Wisconsin Software Symposium May 17 - 18, 2024 (https://nofluffjuststuff.com/madison) - ÜberConf July 16 - 19, 2024 (https://uberconf.com/) - jconf.dev September 24-26 Dallas,Texas (https://2024.jconf.dev) - Dev2next - Sept 30 - Oct 3, Lone Tree, Colorado, USA, 2024 (https://www.dev2next.com/)
An airhacks.fm conversation with Anton Arhipov (@antonarhipov) about: playing sports games on Pentium 233 MHz the 2014 JavaOne Rockstar awards about NetBeans, Eclipse, and IntelliJ., enjoying sports games and destroying joysticks, practicing competitive swimming, swim training, starting to program in Turbo Pascal at Maelardalen University, ship simulation with Java for Vasa Museum, joining a company which maintains RefactorIT, working with Java EE and WebLogic and JRockit, joining ZeroturnAround and working on JRebel, Rebel and LiveRebel, working on a profiler, JetBrain's MPS, DevRel for TeamCity, AppCode features are appearing in fleet, Fleet is built on common UI principles, the rendering engine Skia, Kotlin and Jetpack Compose, Circles by Anton Anton Arhipov on twitter: @antonarhipov
An airhacks.fm conversation with Brian Benz (@bbenz) about: the autumn conferences: Oracle Cloud World, IBM Tech Exchange, the Oracle operator for WebLogic, Jakarta EE, and MicroProfile on Azure, Oracle Cloud World vs. JavaOne, Java EE, Jakarta EE, and MicroProfile on Azure, WebLogic on Azure, JavaOne and Oracle Cloud World, the beginnings of open source at Microsoft, Microsoft Open Tech, the first JUG meeting in Seattle by Microsoft in 2013, the program manager for Java …and Node, program managers vs. evangelists, GitHub Copilot and GitHub Copilot Chat, the slash commands and Copilot Chat, the effectiveness of AI in software development, Semantic Kernel and data indexing, Ampere CPU and 30% power reduction, the hoover dam and solar power Brian Benz on twitter: @bbenz
An airhacks.fm conversation with Axel Fontaine (@axelfontaine) about: starting with 8086 and 640 kB, starting with GW Basic, enjoying Alley Cat and Monkey Island on Sega Master, switching to QBasic, protecting the lemmings, the cyber cafe Cyberia in London, learning Turbo Pascal, impressed by Java Applets, starting in 1998 at IBM Global Services, using Visual Age for Java, travelling the world, the envy version control for Visual Age for java, attending JavaPolis, qcon, first talk at JUG Augsburg about Continuous Delivery, the Continous Delivery Book, Ruby DSL migrations, “data will outlive the code”, database outlives the code, the travel report website, Flyway - the migration path for birds, using JDBC metadata for schema migrations, promoting FlywayDB, paid features and support contracts, running migrations on application startup, the Java EE simplicity Axel Fontaine on twitter: @axelfontaine
An airhacks.fm conversation with Rafael del Nero (@RafaDelNero) about: Celeron 800 Mhz , 64 MB RAM and 10 GB of storage, programming with rpgmaker and Visual Basic, coding a game 3h a day, orkut by google, hacking curiosity, learning Visual Basic, learning Unified Modelling Language, learning PHP, building ERP with StarSoft, using clipper and Fox Pro, starting to learn Java, the SJCP Java book, learning Java EE, building book selling application with JBoss Seam, Star Portal the Sun Microsystems, encapsulating code with Java, enjoying Java Server Faces, accessing EJBs via remote interfaces (RMI), moving from Brasil to Ireland joining the JUG Dublin, starting with Java Challengers, the great Yolande Poirier, 100 days of Java, JavaWorld changed to InfoWorld, the Java Challengers, the Golden Circle, how to break your limits, your limits are your imignation, the Java Challengers Rafael del Nero on twitter: @RafaDelNero
Recorded Date 2/24/2023 Overview Ian, Kito, and Josh are joined by old friends and industry veterans Ed Burns and Reza Rahman, who both work at Microsoft on providing world-class support for Java on #Azure. They reminisce about the old days of JavaServer Faces, the evolution of Java EE to Jakarta EE, discuss Jakarta EE 11, Microsoft's support for Sporing, Jakarta EE, and MicroProfile, PaaS offerings, compare cloud vendors, and much more. Guests: - Ed Burns, Principal Engineer, Microsoft (https://ridingthecrest.com) - Book: Secrets of the Rock Star Programmers: Riding the IT Crest - Reza Rahman, Principal Program Manager for Java on Azure, Microsoft (https://reza-rahman.me/about/) - Earlier episode with Reza: Stackd Episode 37 – Nov 2017 (https://www.pubhouse.net/2017/11/episode-37-nov-2017.html) Server Side Java - Jakarta EE 11 Discussion https://docs.google.com/document/d/1m-dkvbL0iFFzitO4vt1SVq6GGSJyFdCDM2NU_FzGS10/edit?hss_channel=tw-939323243076259842#heading=h.1oyn459kodrn - Java EE, Jakarta EE, and MicroProfile on Azure https://learn.microsoft.com/en-us/azure/developer/java/ee/ - Guide to Contributing to Jakarta EE 11 https://jakartaee-ambassadors.io/guide-to-contributing-to-jakarta-ee-11/ - Jakarta EE 10 presentation (feel free to use it!) https://docs.google.com/presentation/d/1pryG2riguvJzhjceIpSZ03q93gd2scG-/edit?usp=sharing&ouid=105337742626157521641&rtpof=true&sd=true - Azure HCI https://azure.microsoft.com/en-us/products/azure-stack/hci/ - Josh's blog post from 2016 about Java EE progress from Oracle https://jj-blogger.blogspot.com/2016/04/java-ee-8-what-is-current-status-case.html Other - Erotic Life of Code https://www.yumpu.com/en/document/view/37625727/mob-software-the-erotic-life-of-code-oopsla Picks - Infinilog (https://apps.apple.com/us/app/infilog-daily-tracker/id514720973) - The Healthy Programmer (http://healthyprog.com/) - Agenda Notes (https://agenda.com/) - Courage to be Disliked - Book (https://www.amazon.com/Courage-Be-Disliked-Phenomenon-Happiness-ebook/dp/B078MDSV8T) Other Pubhouse Network podcasts - Breaking into Open Source (https://www.pubhouse.net/breaking-into-open-source) - OffHeap (https://www.javaoffheap.com/) - Java Pubhouse (https://www.javapubhouse.com/) Events - JavaLand 2023 - March 21-23, Brühl, Germany - DevNexus 2023 - April 4-6, Atlanta, GA, USA - JAlba - May 4-6, Edinburgh, Scotland - JCON EUROPE 2023 - June 20-23, Cologne Köln, Germany - Gateway Software Symposium - Mar 31-Apr 1, St. Louis, Missouri, USA - Pacific Northwest Software Symposium - April 14-15, Seattle, WA, USA - JPrime - May 30-31st, Sofia, Bulgaria - Central Iowa Software Symposium - June 9-10, 2023, West Des Moines, Iowa, USA - Lone Star Software Symposium: Austin - July 14 - 15, 2023, Austin, TX, USA - ÜberConf - July 18 - 21, 2023, Denver, CO, USA - JChampions Conference Sessions Recorded online
Cet épisode nouvelles discute d'améliorations dans le JDK, d'Hibernate 6, de Service Weaver, de la fin d'options dans DockerHub pour certains projets open source, de Gradle, de cURL et pleins d'autres choses encore. Enregistré le 17 mars 2023 Téléchargement de l'épisode LesCastCodeurs-Episode–292.mp3 News Langages Quelle version de JDK utiliser en fonction des fonctionnalités que l'on souhaite utiliser mais aussi du long time support https://whichjdk.com/ JetBrains propose une formation Rust intégrée aux IDEs https://blog.jetbrains.com/rust/2023/02/21/learn-rust-with-jetbrains-ides/ Un apprentissage directement intégré à l'IDE Avec un plugin “Academy” dédié, qui rajoute un troisième panneau avec les instructions, les explications, et on fait des exercices dans la partie IDE Une chouette manière d'apprendre intégrée directement à son IDE Chacun doit pouvoir créer ses propres ressources d'apprentissage, et on pourrait appliquer ça à des frameworks, des outils, ou pourquoi pas son propre projet informatique ! Retravail de classes du JDK Bits / ByteArray vers un usage via VarHandle pour le swapping de bits dans Java 21 https://minborgsjavapot.blogspot.com/2023/01/java–21-performance-improvements.html petit changement mais utilisé par beaucoup de classes comme ObjectInputStream RandomAccessFile etc améliore la serialization en java Rajout de la notion de “sequenced collection” dans la hiérarchie des collections, planifié pour JDK 21 https://www.infoq.com/news/2023/03/collections-framework-makeover/ va permettre de codifier les collections qui ont un ordre donné (pas forcément trié) rajouter aussi des méthodes pour traverser des collections séquentielles à l'envers, ou pour récupérer ou ajouter un élément au début ou à la fin d'une collection ordonnée aujourd'hui ces methodes sont eparpillées dans les implémentaions et n'avaient aps de contrat commun Le guide ultime des virtual threads https://blog.rockthejvm.com/ultimate-guide-to-java-virtual-threads/ un très long article qui couvre le sujet des nouveaux virtual threads comment en créer comment ils fonctionnent le scheduler et le scheduling coopératif les “pinned” virtual threads (lorsqu'un thread virtuel est bloqué dans un vrai thread, par exemple dans un bloc synchronized ou lors d'appel de méthondes natives) les thread local et thread pools Librairies Quarkus 3 alpha 5 avec Hibernate ORM 6 et une nouvelle DevUI https://quarkus.io/blog/quarkus–3–0–0-alpha5-released/ passage d'Hibernate 5 a 6 (donc testez! switch de compatibilité supérieur pour aider la transition https://github.com/quarkusio/quarkus/wiki/Migration-Guide–3.0:-Hibernate-ORM–5-to–6-migration#database-orm-compatibility (DB interaction esp schema StatelessSession injectable Gradle 8 nouvelle DEvUI (nouveau look and feel, plus extensible pour els extensions et pplus facile a utiliser, va au dela des integrations d'extension (config etc) quarkus deploy dans la CLI, gradle et maven: deploie dans Kube, knative, OpenShift La route vers Quarkus 3, article sure infoq https://www.infoq.com/news/2023/03/road-quarkus–3/ Jakarta EE, ORM 6, Microprofile 6, virtual threads, io_uring, ReactiveStreams=> Flow io_uring reduit les copie de buffer entre userspace et kernel space pas de support JPMS en vue mais Red Hat contribue a project Leyden Camel extensions, attendez Camel 4 (passage Jakarta EE) Interview de Geert Bevin, l'auteur du framework Java RIFE2 https://devm.io/java/rife2-java-framework Google annouce Service Weaver https://opensource.googleblog.com/2023/03/introducing-service-weaver-framework-for-writing-distributed-applications.html EJB is back (Enterprise Go Beans :D) ecrire en tant que modular monolith permet au deploiement décider ce qui est distribué basé sur leur experience du surtout de maintance des microservices (contrats plus difficiles a casser - dbesoin de coordination de rollout etc) dans la communauté des entousiastes et des gens concernés par les 10 falaccies of distributed computing et le fait de cacher les appels distants EJB et corba avant cela ont été des échecs de ce point de vue la ils n'expliquement pas comment le binding de nouveax contrats et de deploiement se fait de maniere transparente des deployeurs implementables (go et GKE initialement) Etude d'opinion de certains utilisateurs de Jakarta EE (OmniFaces community) https://omnifish.ee/2023/03/10/jakarta-ee-survey–2022–2023-results/ biaisée donc attention Java EE 8 suivi par Jakarta EE 8 et derriere Jakarta EE 10 etc WildFly puis Payara puis glassfish ensuite tomee et JBoss EAP gens contents de leurs serverus d'app sand Weblogic et Websphere les api utilisées le plus JPA, CDI, REST, Faces, Servlet, Bean Validation, JTA, EJB, EL etc Produit microprofile: Quarkus puis WildFlky puis Open Liberty puis Payara et Helidon Dans microprofile: Config, rest client, open api, health et metric sont les plus utilisés Comment utiliser des records et Hibernate https://thorben-janssen.com/java-records-embeddables-hibernate/ pas en tant qu'entité encore (final, pas de constructeur vide) mais en tant qu'@Embeddable records sont immuable dans hibernate 6.2, c'est supporté par default (annoter le record @Embeddable Ca utilise le contrat EmbeddableIntentiator Cinq librairies Java super confortables https://tomaszs2.medium.com/5-amazingly-comfortable-java-libraries–887802e240de mapstruct mapper des entités en DTO jOOQ requête de bases de données typées WireMock mocker des API ou être entre le client et l'API pour ne mocker que certaines requêtes Eclipse Collections : pour rendre le code plus simple et facile à comprendre. Attention à la,surface d'attaque HikariCP connection pool rapide - agroal est dans la meme veine mais supporte JTA. C'est ce qui est dans Quarkus. Retour d'expérience sur Hibernate 6 https://www.jpa-buddy.com/blog/hibernate6-whats-new-and-why-its-important/ côté APIs et côté moteur jakarta persistence 3 ; java 11 annotations de types hibernate sont typesafe support des types JSON OOTB meilleur support des dates avec @TimeZoneStorage soit natif de la base soit avec une colonne séparée changement dans la génération des ID (changement cassant) mais stratégies de noms historique peut être activé Options autour de UUID (Time base et IP based) composite id n'ont plus besoin d'être serialisable type texte long supportés via @JdbcTypeCode multitenancy (shared schema, resolver de tenant a plugger) read by position (SQL plus court car sans alias, deserialisarion plus rapide, moins de joins dans certains cas) modele sous jacent commun entre HQL et l'api criteria et donc même moteur meilleure génération du SQL et plus de fonction SQL modernes réduisant le gap entre HQL et SQL ronctions analytiques et fenêtre quand la base les supportent graphe traverse en largeur plutôt qu'en profondeur (potentiellement plus de join donc bien mettre lazy sur vos associations) Cloud Docker supprime les organisations open source sur DockerHub https://blog.alexellis.io/docker-is-deleting-open-source-images/ Les projets open source risquent de devoir passer de 0 $ à 420 $ par an pour héberger leurs images Rétropédalage de Docker https://www.docker.com/blog/we-apologize-we-did-a-terrible-job-announcing-the-end-of-docker-free-teams/ Web Une base de connaissance sur le fonctionnement et les bonnes pratiques autour des WebHooks https://nordicapis.com/exploring-webooks-fyi-the-webhooks-knowledge-center/ Guillaume a refondu son blog https://glaforge.dev/ Cette fois ci, c'est un site web statique, généré avec Hugo, avec des articles en Markdown, hébergé sur Github Pages, buildé / publié automatiquement par Github Actions Outillage Gradle 8.0 est sorti https://docs.gradle.org/8.0/release-notes.html Une CLI connectée à OpenAI's Davinci model pour générer vos lignes de commandes https://github.com/TheR1D/shell_gpt sgpt -se "start nginx using docker, forward 443 and 80 port, mount current folder with index.html" -> docker run -d -p 443:443 -p 80:80 -v $(pwd):/usr/share/nginx/html nginx -> Execute shell command? [y/N]: y Un petit outil en ligne basé sur le modèle GPT–3 qui permet d'expliquer un bout de code https://whatdoesthiscodedo.com/g/db97d13 Copiez-collez un bout de code de moins de 1000 caractères, et le modèle de code de GPT–3, et l'outil vous explique ce que fait ces quelques lignes de code Assez impressionnant quand on pense que c'est un modèle de prédiction probabiliste des prochains caractères logiques Certaines réponses donnent vraiment l'impression parfois que l'outil comprends réellement l'intention du développeur derrière ce bout de code Git: Comment rebaser des branches en cascade https://adamj.eu/tech/2022/10/15/how-to-rebase-stacked-git-branches/ native-image va être inclu dans la prochaine version de GraalVM JDK. Plus besoin de gu install native-image https://github.com/oracle/graal/pull/5995 Si vous utilisez l'outil Mermaid pour faire des graphes d'architecture, d'interactions, etc, il y a un petit cheatsheet sympa qui montre comment faire certains diagrammes https://jojozhuang.github.io/tutorial/mermaid-cheat-sheet/ Un site avec plein de trucs et astuces sur psql, le langage SQL de PostgreSQL https://psql-tips.org/ CURL a 25 ans ! https://daniel.haxx.se/blog/2023/03/10/curl–25-years-online-celebration/ Son créateur, Daniel Stenberg, est toujours à la tête du projet cURL est utilisé dans d'innombrables projets par défaut dans plein de systèmes d'exploitation Cédric Champeau explique le concept de version catalog de Gradle et comment il améliore la productivité https://melix.github.io/blog//2023/03–12-micronaut-catalogs.html permet de réduire le temps et l'effort nécessaire à gérer la version de ses dépendances apport aussi plus de sécurité, de flexibilité, pour s'assurer qu'on a les bonnes versions les plus récentes des dépendances et qu'elles fonctionnent bien entre elles Architecture La pyramide des besoins du code de qualité https://www.fabianzeindl.com/posts/the-codequality-pyramid le bas de la pyramide supporte le haut performance de build performance de test testabilité qualité des codes de composants fonctionalités performance du code pour chaque bloc, il explique les raisons, ses definitions et des astuces pour l'ameliorer par exemples les fonctionalites changent et donc build, testabilité et qualite de code permet des changements légers en cas de changement dans les fonctionalités perf viennent ensuite ("premature opt, root of all evil), regader des besoins globaux Méthodologies Le DevSusOps est né https://www.infoq.com/news/2023/02/sustainability-develop-operation/?utm_campaign=i[…]nt&utm_source=twitter&utm_medium=feed&utm_term=culture-methods bon serieusement, comment on couvre avec un nom pareil sans déraper :man-facepalming: ah dommage Micreosoft rejoints la FinOps foundation https://www.infoq.com/news/2023/02/microsoft-joins-finops-org/?utm_campaign=infoq_content&utm_source=twitter&utm_medium=feed&utm_term=Cloud Imagine si ils avaient rejoint la DevSusOps fondation Sécurité Plein de choses qu'on peut faire avec des Yubikeys https://debugging.works/blog/yubikey-cheatsheet/ Pour générer des time-based one-time passwords, pour l'accès SSH,, pour sécuriser un base Keepass, comme 2FA pour le chiffrement de disque, pour la vérification d'identifiant personnel, pour gérer les clés privées… Loi, société et organisation Le fabricant de graveurs de CPU hollandais ASML se voit interdire d'exporter ses technologies vers la chine https://www-lemagit-fr.cdn.ampproject.org/c/s/www.lemagit.fr/actualites/365532284/Processeurs[…]le-escalade-dans-les-sanctions-contre-la-Chine?amp=1 en tous cas les technologies de gravure des deux dernières generations de la pression commerciale on passe au registre d'exclusion par decision militaire ASML s'était fait espionner récemment CAnon et Sony aussi dans la restriction Meta supprime de nouveau 10000 emplois soit 25% au total depuis la fin de l'année dernière https://www.lesechos.fr/tech-medias/hightech/meta-va-supprimer–10000-postes-de-plus–1915528 Rubrique débutant Bouger les éléments d'une liste https://www.baeldung.com/java-arraylist-move-items discute le concept d'array list en dessous et donc le coût d'insérer au milieu decouverte de Collections.swap (pour intervertir deux elements) decouverte de Collections.rotate pour “deplacer” l'index zero de la liste Conférences La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs : 15–18 mars 2023 : JChateau - Cheverny in the Châteaux of the Loire Valley (France) 23–24 mars 2023 : SymfonyLive Paris - Paris (France) 23–24 mars 2023 : Agile Niort - Niort (France) 30 mars 2023 : Archilocus - Online (France) 31 mars 2023–1 avril 2023 : Agile Games France - Grenoble (France) 1–2 avril 2023 : JdLL - Lyon 3e (France) 4 avril 2023 : AWS Summit Paris - Paris (France) 4 avril 2023 : Lyon Craft - Lyon (France) 5–7 avril 2023 : FIC - Lille Grand Palais (France) 12–14 avril 2023 : Devoxx France - Paris (France) 20 avril 2023 : WordPress Contributor Day - Paris (France) 20–21 avril 2023 : Toulouse Hacking Convention 2023 - Toulouse (France) 21 avril 2023 : WordCamp Paris - Paris (France) 27–28 avril 2023 : AndroidMakers by droidcon - Montrouge (France) 4–6 mai 2023 : Devoxx Greece - Athens (Greece) 10–12 mai 2023 : Devoxx UK - London (UK) 11 mai 2023 : A11yParis - Paris (France) 12 mai 2023 : AFUP Day - lle & Lyon (France) 12 mai 2023 : SoCraTes Rennes - Rennes (France) 25–26 mai 2023 : Newcrafts Paris - Paris (France) 26 mai 2023 : Devfest Lille - Lille (France) 27 mai 2023 : Polycloud - Montpellier (France) 31 mai 2023–2 juin 2023 : Devoxx Poland - Krakow (Poland) 31 mai 2023–2 juin 2023 : Web2Day - Nantes (France) 1 juin 2023 : Javaday - Paris (France) 1 juin 2023 : WAX - Aix-en-Provence (France) 2–3 juin 2023 : Sud Web - Toulouse (France) 7 juin 2023 : Serverless Days Paris - Paris (France) 15–16 juin 2023 : Le Camping des Speakers - Baden (France) 20 juin 2023 : Mobilis in Mobile - Nantes (France) 20 juin 2023 : Cloud Est - Villeurbanne (France) 21–23 juin 2023 : Rencontres R - Avignon (France) 28–30 juin 2023 : Breizh Camp - Rennes (France) 29–30 juin 2023 : Sunny Tech - Montpellier (France) 29–30 juin 2023 : Agi'Lille - Lille (France) 8 septembre 2023 : JUG Summer Camp - La Rochelle (France) 19 septembre 2023 : Salon de la Data Nantes - Nantes (France) & Online 21–22 septembre 2023 : API Platform Conference - Lille (France) & Online 25–26 septembre 2023 : BIG DATA & AI PARIS 2023 - Paris (France) 28–30 septembre 2023 : Paris Web - Paris (France) 2–6 octobre 2023 : Devoxx Belgium - Antwerp (Belgium) 10–12 octobre 2023 : Devoxx Morroco - Agadir (Morroco) 12 octobre 2023 : Cloud Nord - Lille (France) 12–13 octobre 2023 : Volcamp 2023 - Clermont-Ferrand (France) 12–13 octobre 2023 : Forum PHP 2023 - Marne-la-Vallée (France) 19–20 octobre 2023 : DevFest Nantes - Nantes (France) 10 novembre 2023 : BDX I/O - Bordeaux (France) 6–7 décembre 2023 : Open Source Experience - Paris (France) 31 janvier 2024–3 février 2024 : SnowCamp - Grenoble (France) 1–3 février 2024 : SnowCamp - Grenoble (France) Nous contacter Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs Contactez-nous via twitter https://twitter.com/lescastcodeurs Faire un crowdcast ou une crowdquestion Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Tous les épisodes et toutes les infos sur https://lescastcodeurs.com/
An airhacks.fm conversation with Ralph Soika (@rsoika) about: Starting programming with Atari 600XL The thick book: My Atari XL Computer - Learning Basic, programming print hello, GOTO 10, publishing and developing a Moon Lander game in a magazine, developing logistics software, starting a company to develop Lotus Domino solutions, starting with Delphi, then transitioning to Java, starting with Java 1.0, implementing a Java backend for Lotus Domino, writing Java agents for Lotus Domino server CouchDB is based on Lotus Notes, the Groove peer to peer software, programming Java applets and Swing applications, implementing workflow modeller with Eclipse, founding the imixs company, building to build a workflow engine on J2EE, removing code with every release of Java EE, the 106th airhacks.tv and is Java EE dead?, building a human-centric workflow engine, ACL on documents for confidential data processing, learning from Louts Notes, Java Persistence API and PostgreSQL, fast queries with Blobs, Apache Lucene and PostgreSQL, kubernetes in the cloud and on premise, AWS ECS Fargate, AWS App Runner, Azure Container Instances, Azure App Service, managed alternatives in the clouds Ralph Soika on twitter: @rsoika
An airhacks.fm conversation with Heinz Kabutz (@heinzkabutz) about: Heinz previously on airhacks.fm "#215 Karatsuba, Megamorphic Call-sites, Deadlocks and a bit of Loom", a contribution to jdk, 2022 in review, Nicolai Parlog on airhacks.fm "#206 Java 19: Millions of Threads in No Time", newsletter: Contributing BigInteger.parallelMultiply() to OpenJDK, The Java Module System book by Nicolai Parlog, JEP 192: String Deduplication in G1, String.intern, G1 and deduplication, JDK Mission Control, xdoclet for Java EE deployment, destroying G1 with a LinkedList and millions entries, Java Records as data transporters, interfaces as factories, Teardown of ArrayBlockingQueue, WeakReferences and ArrayBlockingQueue, ExecutorService in Java 19 is AutoCloseable, Java iterators and memory leaks, Weak references in Swing, Real World Visitor with Pattern Matching for instanceof in AWS CDK, JSR 356 - Java API for WebSocket Eclipse Tyrus, JEP 238: Multi-Release JAR Files, Create a Custom, Right-Sized JVM with jlink, streaming events with JEP 328: Flight Recorder, var for everything, the new Project Coin and private interface methods, System.out.printf is working, jshell for javadoc, JVM logging, System.logger and java.util.logging, System.Logger--the minimalistic logging interface in Java 9, Serialization Filtering, What Do WebLogic, WebSphere, JBoss, Jenkins, OpenNMS, and Your Application Have in Common? This Vulnerability Heinz Kabutz on twitter: @heinzkabutz
An airhacks.fm conversation with Mary Grygleski (@mgrygles) about: 808X as first computer, Hong Kong was high tech, enjoying space missions, Star Trek and Star Wars, the intriguing registration terminal, writing code in Pascal, 3 GL programming languages and SQL, set theory and SQL, the seven layers of OSI, OSI model, IBM MVS, AS 400 is the opposite of micro services, developers get bored too early, learning X-Windows, working with early Oracle databases, using dBASE, clipper and FoxPro, transarc, stratos tx, Transarc the transaction file system, Transaction Processing: Concepts and Techniques, working on SMTP / MTA, CouchDB and Lotus Notes, the Sun Ultra 30 workstation, starting at Sybase, EA server Sybase / Jaguar, using emacs for Java development, then netbeans, Java EE and the hierarchical class loaders, working on EJB 3 specs, mobile apps with Apache Cordova, reactive systems at IBM, using akka, Eclipse Vertex and MicroProfile, working for datastax and Pulsar, Datastax provides support for Apache Cassandra and Apache Pulsar, separating the compute from the storage, astra the managed cloud platform Mary Grygleski on twitter: @mgrygles
If you're confused about Jakarta EE vs. Java EE vs. J2EE, then check out this episode. Learn why Spring Boot 3 and Spring Framework 6 are picking up Jakarta EE 9 and how else this impacts YOUR next application! ==== Don't forget to pre-order your copy of Learning Spring Boot 3.0 3rd Edition today at https://springbootlearning.com/book! ==== RESOURCES:
Today's guest is Derek Barrera, Founder and CEO of Steer Protocol. Steer Protocol is a platform for cross-chain automated strategies with secure on-chain executions with minimal fees to users, providing maximal yield on earned fees for participating in the protocol. Steer enables users to create/use/upload yield-generating models called Strategies from complex algorithms to recurring tasks with zero computation cost and on any blockchain. Steer infrastructure offers endless possibilities like Automated Liquidity Management, Loan Payments, Asset Management, Data Availability Marketplace, Automated Governance, Oracles, etc. Users can write in any programming language and execute on any chain. Steer currently supports Ethereum, Bitcoin, Optimism, Polygon (Matic), and BSC. Derek has 14 years of software experience. He is a highly-skilled, energetic professional with a strong software engineering and developer operations background and extensive hands-on experience with many programming disciplines, including MEAN and LAMP stacks, HTML5, CSS3, Javascript, Java EE, C++, and Search Engine Optimization (SEO). Derek has worked in the Blockchain industry since 2016, leading various projects to a combined valuation of over $3.6 Billion. He has built cryptographic cross-chain libraries and enterprise custody solutions for exchanges/brokers. He has worked with over eight different chains and over 500 supported assets. His experience also includes spearheading the creation of an L2 EVM and deploying various cross-chain DeFi protocols. We discuss various topics, including the Steer Protocol, yield generation, the macroeconomic landscape, advice for aspiring founders, and much more. We began our conversation by discussing the benefits of the bear market. Derek explains how founders can take advantage of the bear market. Our next conversation topic centered around Steer Protocol and how it works. Derek describes how Steer's is optimizing yield strategy and execution. Derek shares how Steer helps users optimize yield strategies on Uniswap V3. We discuss in depth how yield works in crypto. We discuss the state of the macroeconomic outlook and how people are beginning to understand the value proposition of an asset like Bitcoin. We discuss the current Credit Suisse situation and the possible contagion fallout if they default. We discuss why insurance and yield could be the killer apps for crypto and potential avenues for the next growth phase of crypto. Our next topic centered around cross-chain and the possibility of a multi-chain world. Derek explains the problems that cross-chain yield products are facing. But Derek stresses that a multi-chain world is inevitable. We discuss how chains will probably proliferate around use cases and focus on solving specific market needs. Our final discussion centered around regulation. Derek explains why sensible regulation is needed. Please enjoy my conversation with Derek Barrera. -- BingX is a crypto social trading exchange with over 3M users. BingX offers CFDs, futures, spot, derivatives, and copy trading services to more than 100 countries worldwide and connects users with expert traders on the platform in a safe, simple, and transparent way through social trading networks. For Charlie's listeners only, register using this link for a 155 USDT Welcome Gift: https://untoldstories.link/bingx -- This podcast is powered by Blockworks. For exclusive content and events that provide insights into the crypto and blockchain space, visit them at https://blockworks.co
An airhacks.fm conversation with Dmitry Chuyko (@dchuyko) about: Logo on BK, and Basic on Nemiga, Pentium 1, AltaVista and Lycos, starting with Pascal, C, then Borland's Kylix, controlling the CD tray, managing toy production with MS Access, writing drivers for Windows at high school, math over programming, joining Borland, Visual Basic, C++, XSLT then Java, from C++ to Java, using Apache Xalan, using Apache FOP for transformations, fancy XML in 2003, Java on desktop, using Java on cellular phones, simplifying Java EE with visual modelling, working in a 4G startup, using JXTA for car to car communication, starting at QuickOffice, writing backend for Deutsche Bank, starting at Oracle performance team, if you want to go to Oracle, you go to Delphi, improving Java performance, joining BellSoft, Liberica JDK, BellSoft is top openJDK and JCP contributor, Liberica's native image Kit, Dmitry Chuyko on twitter: @dchuyko
An airhacks.fm conversation with Daniel Lipp (@dynamic_123) about: starting to program CPC Schneider in the store, Basic and Logo, the first floppy disk to save the work, writing a senso game, Mandelbrot caclulations locked the computer for days, wiring computers on vacations, finding hidden files of Werner the German rocker game, Logo looks like assembly, starting physics and learning Turbo Pascal, from Basic to Visual Age SmallTalk, math formulas as code, memory leaks in C++, SmallTalk solved memory leaks, SmallTalk over Java, migrating from SmallTalk to Java, the elegance of SmallTalk, overriding a non-existing method in SmallTalk, Visual Age for SmallTalk over Visual Age for Java, the non-extendible Java currency class, recompiling the java.util.Currency class, writing a Java persistence layer, modernising with Java EE 5, writing Eclipse RAP clients, it is hard to maintain the spirit in fast growing companies, starting at open source CMS startup, migrating to openshift and containers, migrating microservices from JBoss to Quarkus, saving memory and CPU with Quarkus, saving money with quarkus, migrating from Java EE to Quarkus with minor code adjustments, the same old, serverless, architecture, Daniel Lipp on twitter: @dynamic_123 and Instagram: dynamic_dli
An airhacks.fm conversation with Goran Opacic (@goranopacic) about: transactions and clouds, checkout last episode with Goran: "#190 Real World Enterprise Serverless Java on AWS Cloud", transition from Java EE to the cloud, Long Running Actions in MicroProfile and the saga pattern, the problem of transaction coordination, in the clouds there should be no coordinating servers, DynamoDB is transactional and supports conditional writes, AWS Lambda Powertools for Java, event driven thinking on AWS, Java idioms and conventions on AWS, Amazon DynamoDB JPA-like persistence - DynamoDBMapper, dependency injection in AWS Lambdas, AWS Lambda PowerTools features should become a part of Lambda, the Z Garbage Collector, a missile with memory leaks, running BIRT reports in a AWS Lambda, synchronous Step Functions, EventBridge is the service connectors, AWS AppSync can push events to the client, Goran Opacic on twitter: @goranopacic, Goran's blog: madabout.cloud
Cet épisode marathon sera découpé en deux morceaux pour éviter à vos oreilles une écoute marathon. Cette deuxième partie couvre des sujets d'architecture et de loi société et organisation ainsi que les conférences à venir. Logging, Migration Java 8 vers 11, Xerox Park, (manque de) sécurité, courbes elliptiques, sondage développeurs. Enregistré le 8 juillet 2022 Téléchargement de l'épisode LesCastCodeurs-Episode–282.mp3 News Architecture Pour ou contre le logging Contre puis pour tous les langages et plateformes utilisent les logs debugging, tracing, journaling, monitoring, and printing errors impact sur les performances (allocation supérieure sur un log que sur le code métier log = mémoire, CPU (GC), I/O risque de securité (dépendances et fonctionnalités sans besoin) format des log: pour lecture humaine main volume impose traitement automatique log level la bonne abstraction (souvent trop et pas ce que l'on veut à la fois debugging -> utiliser un debugger ; journaling -> event sourcing ou solution dédiée ; tracing > open tracing ; monitoring -> monitoring solution via metrics et health check bons usages de logging: en dev (println), fin de jobs automatiques, erreurs non récupérables ou innatendues, pas les erreurs utilisateur (logger les erreurs qui cachent un bug), dans les container, Sébastien utilise System.out et System.err vu que les logs sont gérés par la plateforme la réponse pour maintenant les logs peuvent etre structurés performance, on peut éviter les concatenations de String (parameterized logging), memory allocation est bien meilleure depuis 2012 (e.g. Shenandoah), vu des problèmes dans des cas plus rare de genre MDC.getCopyOfContextMap disk I/O: ok mais disque cape a 200 MiB/s donc bon…: si c;est le cas, sépare I/O log du reste (disque vs network par exemple) gros fan de logs structures via JSON ; log line sur console et JSON en fichier log plus de manière conditionelle tracing théoriquement bon mais limite dans son contexte métier et peu d'infos passables system.out problème de scalabilité d'usage, etc et appel blocant println (async usage n'est pas bon) LinkedIn et sa migration de Java 8 à 11 1000 apps sur 320k hosts Migration Java 8 vers 11 avec en vue G1 regardé depuis 2018 Jetty, Hadoop, Play, Samza: focalisé sur Jetty Mettre a jour le système de build, 2. Faire des tests de performance 3. Automatiser la migration mise. a jour vers gradle 5 G1 80% des applis CMS 20% pris 20 apps representatives focalisé sur les applications avec les tailles de piles les plus grosses de équipera jusquà 200% plus de latence et throughput: zones G1, Shenandoah et ZGC automatisé la migration du reste et tourné les builds de tests qui ont identifié les problèmes de migration quelques problèmes: suppression de certaines classes Java EE, changement du type de classloader par défaut, casting de classe plus stricte ils ont utilisé -release 8 et ont limité les usages des features Java 11 les options de CLI de la JVM ont beaucoup changé LinkedIn fait du microsercices ce qui veut dire que beaucoup de repositories sont liés à d'autre par un graphe de dépendance: euh c'est pas le principe des microservices d'éviter ça??? mise a jour de 500 librairies 3/4 de l'année Quelques challenges vus La JVM respecte groups et donc moins de thread GC sont crées aussi ils pouvaient piquer des cycles CPUs avant et plus maintenant Java 11 a un usage de mémoire hors pile plus important reduction de latence p99 par 10% et le throughput par 20% sans changer le type de GC C'est un bon retour qui sent le type de développement de la vrai vie Méthodologies Un article sur Xerox park et comment ils ont inventé le futur article de 1985 Xerox achète un constructeur de mainframe, et ils ont crée un lab de recherche pour aider les usages Macintosh et la souris et les fenêtres, les cartes météos colorées, imprimante laser, réseaux d'ordinateurs, lasers semi-conducteurs qui lisent les disques optiques, langages de programmation structurés developer l'architecture de l'information project proposes et faite en bottom up PARC construisait ses propres hardware ce qui a créer des inventions et qui devaient etre construits pour 100 utilisateurs (scale) recherche en construisant concrètement, pas en papier théorique académique bit map, distributed computing, email, frame buffer, LAN, object oriented programming Cree Alto un ordinateur « personnel » qui a permis aux chercheurs de tester leurs idées, beaucoup en avaient un. donc ils ont du inventer le LAN et Ethernet (packet) via une personne avec passe de radio amateur (medium partagé et non reliable premier projet distribué. (Un protocole d'impression) antialiasing : ils amélioraient en testant pour de vrai un gars a construit un proto de souris pour prouver que les curseurs étaient plus efficace: tests avec des dans la rue et IO a perdu :D concept de modal (insert, delete) vers comportement non modal, plus simple pour l'utilisateur small talk: un langage si simple qu'un enfant peut l'utiliser (simulation based programming) overlapping windows ont été développées en small talk autre groupe strong type system Xerox ne savait pas convertir ces recherches en produits et les amener sur le marcher (sauf l'imprimante laser) Sécurité Travis CI fuit encore des mots de passe permet d'accéder au compte privé des développeurs open source qui ont mis en place travisCI c'est la quatrième fois token offre accès lecture et écriture aux repos risque d'attaque de supply chain tokens github, AWS ou DockerHub apr exemple mais aussi les bases de données utilisées dans la CI via l'API TravisCI HDMI peut-être un vecteur d'attaque et d'infection de vos ordinateurs Un hack d'un adaptateur HDMI peut potentiellement infecter un video-projecteur, et qui à son tour pourra réinfecter les prochains ordinateurs qui s'y connecteront Cet article propose de construire une sorte de connecteur qui sert de firewall HDMI pour éviter ce genre d'infection il y a des préservatifs USB aussi qui ne laissent passer que la puissance et pas les données Un guide pour protéger son macOS Une suite de conseils comme de faire une installation toute fraiche, de mettre les mises à jour logicielle automatiques, n'autoriser que les applications signées, appliquer le chiffrement du disque… Mais aussi utiliser par exemple un gestionnaire de mot de passe, éviter les extensions de navigateur, faire tourner un firewall Et des liens vers des guides de sécurités plus avancés un truc que je n'ai pas fait mais qui me tente c'est un outbound firewall comme little snitch ou lulu Comment choisir un algorithme de courbes elliptiques un article qui détaille le pour et le contre de certaines courbes elliptiques cas d'usage, notamment gouvernemental faiblesses (timing attaques etc) pour les curieux mais la première courbe citée est celle la plus utilisée en ce moment Loi, société et organisation Stackoverflow sort son sondage sur les développeurs 70% apprennent a coder en ligne (les plus de 45 ans dans les bouquins) stackoverflow derrière la doc technique puis les blogs ; video 60% des gens ; podcast 7,21% damn! presque 60% ont moins de 10 ans d'expérience ; si t'es pas VP ou CxO a 17 ans d'expérience, tu as raté ta vie 9% cloud infra engineers 22% ont neuro atypiques Docker passe dans la catégorie outil fondamental (69% d'usage) les frameworks 3D genre Unity 3D ou Unreal Engine sont des outils que des non développeurs pro apprennent Rust technologie la plus aimée, Rust et Python en plus demandées Java 6eme position mais 4ème pour ceux qui apprenent Angular.is en framework le plus redouté / react.is le plus demandé Docker et Kube sont les plus aimés et demandé indépendants on augmenté de 5% et 4% pour les temples pleins 85% des dev sont dans une orga partiellement distancié le 62% des devs pro cherchent des réponses pendant plus de 30 minutes par jour, 25% 11h Azure prend la deuxième place des cloud, OVH 3,7% Spring framework le plus populaire de Java VSCode 74%, IntelliJ 28%, vim 23%, Eclipse 12%, EMacs 4,5% pleins d'outils asynchrone (tickets etc) que je ne connais pas salaires ont augmenté de 23% en median JavaScript change de licence open source toujours la licence Ecma international license, assez restrictive qui interdit le fork, mais avec certaines provisions pour l'intégration et la reproduction mais aussi une nouvelle licence dérivée de la W3C Document & Software License, un peu plus ouverte, qui permet d'intégrer et s'intégrer plus facilement avec les autres standards du Web Conférences de la part de Youen Cette année Codeurs en Seine, c'est le 17 novembre et le cfp est ouvert N'hésitez pas à amener un peu de JVM dans l'appel à orateur. (ca commence à se faire rare). Pour rappel : codeurs en seine c'est 1000 personnes autour des métiers du développement dans une des plus grande salle de Rouen, le kindarena. Nous contacter Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Faire un crowdcast ou une crowdquestion Contactez-nous via twitter https://twitter.com/lescastcodeurs sur le groupe Google https://groups.google.com/group/lescastcodeurs ou sur le site web https://lescastcodeurs.com/
In this episode, we cover: Aaron talks about starting out as a developer and the early stages of cloud development at RBC (1:05) Aaron discusses transitioning to developer advocacy (12:25) Aaron identifies successes he had in his early days of developer advocacy (20:35) Jason asks what it looks like to assist developers in achieving completion with long term maintenance projects, or “sustainable development” (25:40) Jason and Aaron discuss what “innersource” is and why it's valuable in an organization (29:29) Aaron answers the question “how do you keep skills and knowledge up to date?” (33:55) Aaron talks about job opportunities at RBC (38:55) Links Referenced: Royal Bank of Canada: https://www.rbcroyalbank.com Opportunities at RBC: https://jobs.rbc.com/ca/en TranscriptAaron: And I guess some PM asked my boss, “So, Aaron doesn't come to our platform status meetings, he doesn't really take tickets, and he doesn't take support rotation. What does Aaron do for the Cloud Platform Team?”Jason: [laugh].Jason: Welcome to Break Things on Purpose, a podcast about reliability, learning, and building better systems. In this episode, we talk with Aaron Clark, Director of Developer Advocacy at the Royal Bank of Canada. We chat with him about his journey from developer to advocate, the power of applying open-source principles within organizations—known as innersource—and his advice to keep learning.Jason: Welcome to the show, Aaron.Aaron: Thanks for having me, Jason. My name is Aaron Clark. I'm a developer advocate for cloud at RBC. That is the Royal Bank of Canada. And I've been at the bank for… well, since February 2010.Jason: So, when you first joined the bank, you were not a developer advocate, though?Aaron: Right. So, I have been in my current role since 2019. I've been part of the cloud program since 2017. Way back in 2010, I joined as a Java developer. So, my background in terms of being a developer is pretty much heavy on Java. Java and Spring Boot, now.I joined working on a bunch of Java applications within one of the many functions areas within the Royal Bank. The bank is gigantic. That's kind of one of the things people sometimes struggle to grasp. It's such a large organization. We're something like 100,000… yeah, 100,000 employees, around 10,000 of that is in technology, so developers, developer adjacent roles like business analysts, and QE, and operations and support, and all of those roles.It's a big organization. And that's one of the interesting things to kind of grapple with when you join the organization. So, I joined in a group called Risk IT. We built solely internal-facing applications. I worked on a bunch of stuff in there.I'm kind of a generalist, where I have interest in all the DevOps things. I set up one of the very first Hudson servers in Risk—well, in the bank, but specifically in Risk—and I admin'ed it on the side because nobody else was doing it and it needed doing. After a few years of doing that and working on a bunch of different projects, I was occasionally just, “We need this project to succeed, to have a good foundation at the start, so Aaron, you're on this project for six months and then you're doing something different.” Which was really interesting. At the same time, I always worry about the problem where if you don't stay on something for very long, you never learn the consequences of the poor decisions you may have made because you don't have to deal with it.Jason: [laugh].Aaron: And that was like the flip side of, I hope I'm making good decisions here. It seemed to be pretty good, people seemed happy with it, but I always worry about that. Like, being in a role for a few years where you build something, and then it's in production, and you're running it and you're dealing with, “Oh, I made this decision that seems like a good idea at the time. Turns out that's a bad idea. Don't do that next time.” You never learned that if you don't stay in a role.When I was overall in Risk IT for four, almost five years, so I would work with a bunch of the teams who maybe stayed on this project, they'd come ask me questions. It's like, I'm not gone gone. I'm just not working on that project for the next few months or whatever. And then I moved into another part of the organization, like, a sister group called Finance IT that runs kind of the—builds and runs the general ledger for the bank. Or at least for a part of capital markets.It gets fuzzy as the organization moves around. And groups combine and disperse and things like that. That group, I actually had some interesting stuff that was when I started working on more things like cloud, looking at cloud, the bank was starting to bring in cloud. So, I was still on the application development side, but I was interested in it. I had been to some conferences like OSCON, and started to hear about and learn about things like Docker, things like Kubernetes, things like Spring Boot, and I was like this is some really neat stuff.I was working on a Spark-based ETL system, on one of the early Hadoop clusters at the bank. So, I've been I'm like, super, super lucky that I got to do a lot of this stuff, work on all of these new things when they were really nascent within the organization. I've also had really supportive leadership. So, like, I was doing—that continuous integration server, that was totally on the side; I got involved in a bunch of reuse ideas of, we have this larger group; we're doing a lot of similar things; let's share some of the libraries and things like that. That was before being any, like, developer advocate or anything like that I was working on these.And I was actually funded for a year to promote and work on reuse activities, basically. And that was—I learned a lot, I made a lot of mistakes that I now, like, inform some of the decisions I make in my current role, but I was doing all of this, and I almost described it as I kind of taxed my existing project because I'm working on this team, but I have this side thing that I have to do. And I might need to take a morning and not work on your project because I have to, like, maintain this build machine for somebody. And I had really supportive leadership. They were great.They recognize the value of these activities, and didn't really argue about the fact that I was taking time away from whatever the budget said I was supposed to be doing, which was really good. So, I started doing that, and I was working in finance as the Cloud Team was starting to go through a revamp—the initial nascent Cloud Team at the bank—and I was doing cloud things from the app dev side, but at the same time within my group, anytime something surprising became broken, somebody had some emergency that they needed somebody to drop in and be clever and solve things, that person became me. And I was running into a lot of distractions in that sense. And it's nice to be the person who gets to work on, “Oh, this thing needs rescuing. Help us, Aaron.”That's fantastic; it feels really good, right, up until you're spending a lot of your time doing it and you can't do the things that you're really interested in. So, I actually decided to move over to the Cloud Team and work on kind of defining how we build applications for the cloud, which was really—it was a really good time. It was a really early time in the bank, so nobody really knew how we were going to build applications, how we were going to put them on the cloud, what does that structure look like? I got to do a lot of reading and research and learning from other people. One of the key things about, like, a really large organization that's a little slow-moving like the bank and is a little bit risk-averse in terms of technology choices, people always act like that's always a bad thing.And sometimes it is because we're sometimes not adopting things that we would really get a lot of benefit out of, but the other side of it is, by the time we get to a lot of these technologies and platforms, a bunch of the sharp edges have kind of been sanded off. Like, the Facebooks and the Twitters of the world, they've adopted it and they've discovered all of these problems and been, like, duct-taping them together. And they've kind of found, “Oh, we need to have actual, like, security built into this system,” or things like that, and they've dealt with it. So, by the time we get to it, some of those issues are just not there anymore. We don't have to deal with them.Which is an underrated positive of being in a more conservative organization around that. So, we were figuring there's a lot of things we could learn from. When we were looking at microservices and, kind of, Spring Boot Spring Cloud, the initial cloud parts that had been brought into the organization were mainly around Cloud Foundry. And we were helping some initial app teams build their applications, which we probably over-engineered some of those applications, in the sense that we were proving out patterns that you didn't desperately need for building those applications. Like, you could have probably just done it with a web app and relational database and it would have been fine.But we were proving out some of the patterns of how do you build something for broader scale with microservices and things like that. We learned a bunch about the complexities of doing that too early, but we also learned a bunch about how to do this so we could teach other application teams. And that's kind of the group that I became part of, where I wasn't a platform operator on the cloud, but I was working with dev teams, building things with dev teams to help them learn how to build stuff for cloud. And this was my first real exposure to that scope and scale of the bank. I'd been in the smaller groups and one of the things that you start to encounter when you start to interact with the larger parts of the bank is just, kind of, how many silos there are, how diverse the tech stacks are in an organization of that size.Like, we have areas that do things with Java, we have areas doing things with .NET Framework, we have areas doing lots of Python, we have areas doing lots of Node, especially as the organization started building more web applications. While you're building things with Angular and using npm for the front-end, so you're building stuff on the back-end with Node as well. Whether that is a good technology choice, a lot of the time you're building with what you have. Even within Java, we'd have teams building with Spring Boot, and lots of groups doing that, but someone else is interested in Google Guice, so they're building—instead of Spring, they're using Google Guice as their dependency injection framework.Or they have a… like, there's the mainframe, right? You have this huge technology stack where lots of people are building Java EE applications still and trying to evolve that from the old grungy days of Java EE to the much nicer modern ways of it. And some of the technology conversations are things like, “Well, you can use this other technology; that's fine, but if you're using that, and we're using something else over here, we can't help each other. When I solve a problem, I can't really help solve it for you as well. You have to solve it for yourself with your framework.”I talked to a team once using Vertex in Java, and I asked them, “Why are you using Vertex?” And they said, “Well, that's what our team knew.” I was like, “That's a good technology choice in the sense that we have to deliver. This is what we know, so this is the thing we know we can succeed with rather than actually learning something new on the job while trying to deliver something.” That's often a recipe for challenges if not outright failure.Jason: Yeah. So, it sounds like that's kind of where you come in; if all these teams are doing very disparate things, right—Aaron: Mm-hm.Jason: That's both good and bad, right? That's the whole point of microservices is independent teams, everyone's decoupled, more velocity. But also, there's huge advantages—especially in an org the size of RBC—to leverage some of the learnings from one team to another, and really, like, start to share these best practices. I'm guessing that's where you come into play now in your current role.Aaron: Yeah. And that's the part where how do we have the flexibility for people to make their own choices while standardizing so we don't have this enormous sprawl, so we can build on things? And this is starting to kind of where I started really getting involved in community stuff and doing developer advocacy. And part of how this actually happened—and this is another one of those cases where I've been very fortunate and I've had great leaders—I was working as part of the Cloud Platform Team, the Special Projects group that I was, a couple of people left; I was the last one left. It's like, “Well, you can't be your own department, so you're part of Cloud Platform.” But I'm not an operator. I don't take a support rotation.And I'm ostensibly building tooling, but I'm mostly doing innersource. This is where the innersource community started to spin up at RBC. I was one of the, kind of, founding members of the innersource community and getting that going. We had built a bunch of libraries for cloud, so those were some of the first projects into innersource where I was maintaining the library for Java and Spring using OIDC. And this is kind of predating Spring Security's native support for OIDC—so Open ID Connect—And I was doing a lot of that, I was supporting app teams who were trying to adopt that library, I was involved in some of the other early developer experience things around, you complain this thing is bad as the developer; why do we have to do this? You get invited to one of the VP's regular weekly meetings to discuss, and now you're busy trying to fix, kind of, parts of the developer experience. I was doing this, and I guess some PM asked my boss, “So, Aaron doesn't come to our platform status meetings, he doesn't really take tickets, and he doesn't take support rotation. What does Aaron do for the Cloud Platform Team?”Jason: [laugh].Aaron: And my boss was like, “Well, Aaron's got a lot of these other things that he's involved with that are really valuable.” One of the other things I was doing at this point was I was hosting the Tech Talk speaking series, which is kind of an internal conference-style talks where we get an expert from within the organization and we try to cross those silos where we find someone who's a machine-learning expert; come and explain how TensorFlow works. Come and explain how Spark works, why it's awesome. And we get those experts to come and do presentations internally for RBC-ers. And I was doing that and doing all of the support work for running that event series with the co-organizers that we had.And at the end of the year, when they were starting up a new initiative to really focus on how do we start promoting cloud adoption rather than just people arrive at the platform and start using it and figure it out for themselves—you can only get so far with that—my boss sits me down. He says. “So, we really like all the things that you've been doing, all of these community things and things like that, so we're going to make that your job now.” And this is how I arrived at there. It's not like I applied to be a developer advocate. I was doing all of these things on the side and all of a sudden, 75% of my time was all of these side projects, and that became my job.So, it's not really the most replicable, like, career path, but it is one of those things where, like, getting involved in stuff is a great way to find a niche that is the things that you're passionate about. So, I changed my title. You can do that in some of our systems as long as your manager approves it, so I changed my title from the very generic ‘Senior Technical Systems Analyst—which, who knows what I actually do when that's my title—and I changed that to ‘Developer Advocate.' And that was when I started doing more research learning about what do actual developer advocates do because I want to be a developer advocate. I want to say I'm a developer advocate.For the longest time in the organization, I'm the only person in the company with that title, which is interesting because then nobody knows what to do with me because I'm not like—am I, like—I'm not a director, I'm not a VP. Like… but I'm not just a regular developer, either. Where—I don't fit in the hierarchy. Which is good because then people stop getting worried about what what are titles and things like that, and they just listen to what I say. So, I do, like, design consultations with dev teams, making sure that they knew what they were doing, or were aware of a bunch of the pitfalls when they started to get onto the cloud.I would build a lot of samples, a lot of docs, do a lot of the community engagement, so going to events internally that we'd have, doing a lot of those kinds of things. A lot of the innersource stuff I was already doing—the speaking series—but now it was my job formally, and it helped me cross a lot of those silos and work very horizontally. That's one of the different parts about my job versus a regular developer, is it's my job to cover anything to do with cloud—that at least, that I find interesting, or that my boss tells me I need to work at—and anything anywhere in the organization that touches. So, a dev team doing something with Kubernetes, I can go and talk to them. If they're building something in capital markets that might be useful, I can say, “Hey, can you share this into innersource so that other people can build on this work as well?”And that was really great because I develop all of these relationships with all of these other groups. And that was, to a degree, what the cloud program needed from me as well at that beginning. I explained that this was now my job to one of my friends. And they're like, “That sounds like the perfect job for you because you are technical, but you're really good with people.” I was like, “Am I? I guess I am now that I've been doing it for this amount of time.”And the other part of it as we've gone on more and more is because I talk to all of these development teams, I am not siloed in, I'm not as tunneled on the specific thing I'm working with, and now I can talk to the platform teams and really represent the application developer perspective. Because I'm not building the platform. And they have their priorities, and they have things that they have to worry about; I don't have to deal with that. My job is to bring the perspective of an application developer. That's my background.I'm not an operator; I don't care about the support rotation, I don't care about a bunch of the niggly things and toil of the platform. It's my job, sometimes, to say, hey, this documentation is well-intentioned. I understand how you arrived at this documentation from the perspective of being the platform team and the things that you prioritize and want to explain to people, but as an application developer, none of the information that I need to build something to run on your platform is presented in a manner that I am able to consume. So, I do, like, that side as well of providing customer feedback to the platform saying, “This thing is hard,” or, “This thing that you are asking the application teams to work on, they don't want to care about that. They shouldn't have to care about this thing.” And that sort of stuff.So, I ended up being this human router are sometimes where platform teams will say, “Do you know anybody who's doing this, who's using this thing?” Or finding one app team and say, “You should talk to that group over there because they are also doing the same thing, or they're struggling with the same thing, and you should collaborate.” Or, “They have solved this problem.” Because I don't know every single programming language we use, I don't know all of the frameworks, but I know who I asked for Python questions, and I will send teams to that person. And part of that, then, as I started doing this community work was actually building community.One of the great successes was, we have a Slack channel called ‘Cloud Adoption.' And that was the place where everybody goes to ask their questions about how do I do this thing to put something on Cloud Foundry, put it on Kubernetes? How do I do this? I don't understand. And that was sometimes my whole day was just going onto that Slack channel, answering questions, and being very helpful and trying to document things, trying to get a feel for what people were doing.It was my whole day, sometimes. It took a while to get used to that was actually, like, a successful day coming from a developer background. I'm used to building things, so I feel like success because I built something I can show you, that I did this today. And then I'd have days where I talked to a bunch of people and I don't have anything I can show you. That was, like, the hard part of taking on this role.But one of the big successes was we built this community where it wasn't just me. Other people who wanted to help people, who were just developers on different dev teams, they'd see me ask questions or answer questions, and they would then know the answers and they'd chime in. And as I started being tasked with more and more other activities, I would then get to go—I'd come back to Slack and see oh, there's a bunch of questions. Oh, it turns out, people are able to help themselves. And that was—like that's success from that standpoint of building community.And now that I've done that a couple times with Tech Talks, with some of the developer experience work, some of the cloud adoption work, I get asked internally how do you build community when we're starting up new communities around things like Site Reliability Engineering. How are we going to do that? So, I get—and that feels weird, but that's one of the things that I have been doing now. And as—like, this is a gigantic role because of all of the scope. I can touch anything with anyone in cloud.One of the scope things with the role, but also with the bank is not only do we have all these tech stacks, but we also have this really, really diverse set of technical acumen, where you have people who are experts already on Kubernetes. They will succeed no matter what I do. They'll figure it out because they're that type of personality, they're going to find all the information. If anything, some of the restrictions that we put in place to manage our environments and secure them because of the risk requirements and compliance requirements of being a regulated bank, those will get in the way. Sometimes I'm explaining why those things are there. Sometimes I'm agreeing with people. “Yeah, it sucks. I don't want to have to do this.”But at the same time, you'll have people who they just want to come in, write their code, go home. They don't want to think about technology other than that. They're not going to go and learn things on their own necessarily. And that's not the end of the world. As strange as that sounds to people who are the personality to be constantly learning and constantly getting into everything and tinkering, like, that's me too, but you still need people to keep the lights on, to do all of the other work as well. And people who are happy just doing that, that's also valuable.Because if I was in that role, I would not be happy. And someone who is happy, like, this is good for the overall organization. But the things that they need to learn, the things they need explained to them, the help they need for success is different. So, that's one of the challenges is figuring out how do you address all of those customers? And sometimes even the answer for those customers is—and this is one of the things about my role—it's like the definition is customer success.If the application you're trying to put on cloud should not go on cloud, it is my job to tell you not to put it on cloud. It is not my job to put you on cloud. I want you to succeed, not just to get there. I can get your thing on the cloud in an afternoon, probably, but if I then walk away and it breaks, like, you don't know what to do. So, a lot of the things around how do we teach people to self-serve, how do we make our internal systems more self-serve, those are kind of the things that I look at now.How do I manage my own time because the scope is so big? It's like, I need to figure out where I'm not moving a thousand things forward an inch, but I'm moving things to their completion. And I am learning to, while not managing people, still delegate and work with the community, work with the broader cloud platform group around how do I let go and help other people do things?Jason: So, you mentioned something in there that I think is really interesting, right, the goal of helping people get to completion, right? And I think that's such an interesting thing because I think as—in that advocacy role, there's often a notion of just, like, I'm going to help you get unstuck and then you can keep going, without a clear idea of where they're ultimately heading. And that kind of ties back into something that you said earlier about starting out as a developer where you build things and you kind of just, like, set it free, [laugh] and you don't think about, you know, that day two, sort of, operations, the maintenance, the ongoing kind of stuff. So, I'm curious, as you've progressed in your career, as you've gotten more wisdom from helping people out, what does that look like when you're helping people get to completion, also with the mindset of this is an application that's going to be running for quite some time. Even in the short term, you know, if it's a short-term thing, but I feel like with the bank, most things probably are somewhat long-lived. How do you balance that out? How do you approach that, helping people get to done but also keeping in mind that they have to—this app has to keep living and it has to be maintained?Aaron: Yeah, a lot of it is—like, the term we use is sustainable development. And part of that is kind of removing friction, trying to get the developers to a point where they can focus on, I guess, the term that's often used in the industry is their inner loop. And it should come as no surprise, the bank often has a lot of processes that are high in friction. There's a lot of open a ticket, wait for things. This is the part that I take my conversations with dev teams, and I ask them, “What are the things that are hard? What are the things you don't like? What are the things you wish you didn't have to do or care about?”And some of this is reading between the lines when you talk to them; it's not so much interviewing them. Like, any kind of requirements gathering, usually, it's not what they say, it's what they talk about that then you look at, oh, this is the problem; how do we unstuck that problem so that people can get to where they need to be going? And this kind of informs some of my feedback to the systems we put in place, the processes we put in place around the platform, some of the tooling we look at. I really, really love the philosophy from Docker and Solomon Hykes around, “Batteries included but removable.” I want developers to have a high baseline as a starting point.And this comes partly from my experience with Cloud Foundry. Cloud Foundry has a really great out-of-the-box dev experience for lots of things where, “I just have a web app. Just run it. It's Nginx; it's some HTML pages; I don't need to know all the details. Just make it go and give me the URL.”And I want more of that for app teams where they have a high baseline of things to work with as a starting point. And kind of every organization ends up building this, where they have—like, Netflix: Netflix OSS or Twitter with Finagle—where they have, “Here's the surrounding pieces that I want to plug in that everybody gets as a starting point. And how do we provide security? How do we provide all of these pieces that are major concerns for an app team, that they have to do, we know they have to do?” Some of these are things that only start coming up when they're on the cloud and trying to provide a lot more of that for app teams so they can focus on the business stuff and only get into the weeds when they need to.Jason: As you're talking about these frameworks that, you know, having this high quality or this high baseline of tools that people can just have, right, equipping them with a nice toolbox, I'm guessing that the innersource stuff that you're working on also helps contribute to that.Aaron: Oh, immensely. And as we've gone on and as we've matured, our innersource organization, a huge part of that is other groups as well, where they're finding things that—we need this. And they'll put—it originally it was, “We built this. We'll put it into innersource.” But what you get with that is something that is very targeted and specific to their group and maybe someone else can use it, but they can't use it without bending it a little bit.And I hate bending software to fit it. That's one of the things—it's a very common thing in the corporate environment where we have our existing processes and rather than adopting the standard approach that some tool uses, we need to take it and then bend it until it fits our existing process because we don't want to change our processes. And that gets hard because you run into weird edge cases where this is doing something strange because we bent it. And it's like, well, that's not its fault at that point. As we've started doing more innersource, a lot more things have really become innersource first, where groups realize we need to solve this together.Let's start working on it together and let's design the API as a group. And API design is really, really hard. And how do we do things with shared libraries or services. And working through that as a group, we're seeing more of that, and more commonly things where, “Well, this is a thing we're going to need. We're going to start it in innersource, we'll get some people to use it and they'll be our beta customers. And we'll inform it without really specifically targeting an application and an app team's needs.”Because they're all going to have specific needs. And that's where the, like, ‘included but removable' part comes in. How do we build things extensibly where we have the general solution and you can plug in your specifics? And we're still—like, this is not an easy problem. We're still solving it, we're still working through it, we're getting better at it.A lot of it's just how can we improve day-over-day, year-over-year, to make some of these things better? Even our, like, continuous integration and delivery pipelines to our to clouds, all of these things are in constant flux and constant evolution. We're supporting multiple languages; we're supporting multiple versions of different languages; we're talking about, hey, we need to get started adopting Java 17. None of our libraries or pipelines do that yet, but we should probably get on that since it's been out for—what—almost a year? And really working on kind of decomposing some of these things where we built it for what we needed at the time, but now it feels a bit rigid. How do we pull out the pieces?One of the big pushes in the organization after the log4j CVE and things like that broad impact on the industry is we need to do a much more thorough job around software supply chain, around knowing what we have, making sure we have scans happening and everything. And that's where, like, the pipeline work comes in. I'm consulting on the pipeline stuff where I provide a lot of customer feedback; we have a team that is working on that all full time. But doing a lot of those things and trying to build for what we need, but not cut ourselves off from the broader industry, as well. Like, my nightmare situation, from a tooling standpoint, is that we restrict things, we make decisions around security, or policy or something like that, and we cut ourselves off from the broader CNCF tooling ecosystem, we can't use any of those tools. It's like, well, now we have to build something ourselves, or—which we're never going to do it as well as the external community. Or we're going to just kind of have bad processes and no one's going to be happy so figuring out all of that.Jason: Yeah. One of the things that you mentioned about staying up to speed and having those standards reminds me of, you know, similar to that previous experience that I had was, basically, I was at an org where we said that we'd like to open-source and we used open-source and that basically meant that we forked things and then made our own weird modifications to it. And that meant, like, now, it wasn't really open-source; it was like this weird, hacked thing that you had to keep maintaining and trying to keep it up to date with the latest stuff. Sounds like you're in a better spot, but I am curious, in terms of keeping up with the latest stuff, how do you do that, right? Because you mentioned that the bank, obviously a bit slower, adopting more established software, but then there's you, right, where you're out there at the forefront and you're trying to gather best practices and new technologies that you can use at the bank, how do you do that as someone that's not building with the latest, greatest stuff? How do you keep that skills and that knowledge up to date?Aaron: I try to do reading, I try to set time aside to read things like The New Stack, listen to podcasts about technologies. It's a really broad industry; there's only so much I can keep up with. This was always one of the conversations going way back where I would have the conversation with my boss around the business proposition for me going to conferences, and explaining, like, what's the cost to acquire knowledge in an organization? And while we can bring in consultants, or we can hire people in, like, when you hire new people in, they bring in their pre-existing experiences. So, if someone comes in and they know Hadoop, they can provide information and ideas around is this a good problem to solve with Hadoop? Maybe, maybe not.I don't want to bet a project on that if I don't know anything about Hadoop or Kubernetes or… like, using something like Tilt or Skaffold with my tooling. That's one of the things I got from going to conferences, and I actually need to set more time aside to watch the videos now that everything's virtual. Like, not having that dedicated week is a problem where I'm just disconnected and I'm not dealing with anything. When you're at work, even if KubeCon's going on or Microsoft Build, I'm still doing my day-to-day, I'm getting Slack messages, and I'm not feeling like I can just ignore people. I should probably block out more time, but part of how I stay up to date with it.It's really doing a lot of that reading and research, doing conversations like this, like, the DX Buzz that we invited you to where… I explained that event—it's adjacent to internal speakers—I explained that as I was had a backlog of videos from conferences I was not watching, and secretly if I make everybody else come to lunch with me to watch these videos, I have to watch the video because I'm hosting the session to discuss it, and now I will at least watch one a month. And that's turned out to be a really successful thing internally within the organization to spread knowledge, to have conversations with people. And the other part I do, especially on the tooling side, is I still build stuff. As much as, like, I don't code nearly as much as I used to, I bring an application developer perspective, but I'm not writing code every day anymore.Which I always said was going to be the thing that would make me miserable. It's not. I still think about it, and when I do get to write code, I'm always looking for how can I improve this setup? How can I use this tool? Can I try it out? Is this better? Is this smoother for me so I'm not worrying about this thing?And then spreading that information more broadly within the developer experience group, our DevOps teams, our platform teams, talking to those teams about the things that they use. Like, we use Argo CD within one group and I haven't touched it much, but I know they've got lots of expertise, so talking to them. “How do you use this? How is this good for me? How do I make this work? How can I use it, too?”Jason: I think it's been an incredible, [laugh] as you've been chatting, there are so many different tools and technologies that you've mentioned having used or being used at the bank. Which is both—it's interesting as a, like, there's so much going on in the bank; how do you manage it all? But it's also super interesting, I think, because it shows that there's a lot of interest in just finding the right solutions and finding the right tools, and not really being super-strongly married to one particular tool or one set way to do things, which I think is pretty cool. We're coming up towards the end of our time here, so I did want to ask you, before we sign off, Aaron, do you have anything that you'd like to plug, anything you want to promote?Aaron: Yeah, the Cloud Program is hiring a ton. There's lots of job openings on all of our platform teams. There's probably job openings on my Cloud Adoption Team. So, if you think the bank sounds interesting—the bank is very stable; that's always one of the nice things—but the bank… the thing about the bank, I originally joined the bank saying, “Oh, I'll be here two years, and I'll get bored and I'll leave,” and now it's been 12 years and I'm still at the bank. Because I mentioned, like, that scope and scale of the organization, there's always something interesting happening somewhere.So, if you're interested in cloud platform stuff, we've got a huge cloud platform. If you're in—like, you want to do machine-learning, we've got an entire organization. It should come as no surprise, we have lots of data at a bank, and there's a whole organization for all sorts of different things with machine-learning, deep learning, data analytics, big data, stuff like that. Like, if you think that's interesting, and even if you're not specifically in Toronto, Canada, you can probably find an interesting role within the organization if that's something that turns your crank.Jason: Awesome. We'll post links to everything that we've mentioned, which is a ton. But go check us out, gremlin.com/podcast is where you can find the show note for this episode, and we'll have links to everything. Aaron, thank you so much for joining us. It's been a pleasure to have you.Aaron: Thanks so much for having me, Jason. I'm so happy that we got to do this.Jason: For links to all the information mentioned, visit our website at gremlin.com/podcast. If you liked this episode, subscribe to the Break Things on Purpose podcast on Spotify, Apple Podcasts, or your favorite podcast platform. Our theme song is called, “Battle of Pogs” by Komiku, and it's available on loyaltyfreakmusic.com.
An airhacks.fm conversation with Victor Orozco (@tuxtor) about: focus on Jakarta EE and devops, faster release cycles, Apache Cactus - the test container, daily releases and DevOps challenges, the perfect Sun servers, the deprecated Java EE deployment J2EE API, JSR 88: Java EE Application Deployment, onboarding of new developers is harder today, lean Java EE code is reusable in serverless world, Heroku and openshift started the serverless movement, blog post: How To Push Java EE 6 Applications To The Cloud In 5 Minutes, portability of Java workloads in the clouds, kubernetes vs. docker Compose, the costs of the clouds, or Kubernetes vs. serverless, Kubernetes on linode, Kubernetes is a monolith in the cloud, running private VPCs, the payara cloud and the rethinking of clustering, back to efficient monoliths, the plain Quarkus CDK lambda template, a quarkus AWS Lambda looks like an old Glassfish application, buying CPU with RAM, Java's dependencies are easy to manage, Java's serverless comeback, Victor Orozco on twitter: @tuxtor, Victor's company: nabenik
An airhacks.fm conversation with Goran Opacic (@goranopacic) about: ZX Spectrum with 9 years, fortran listings as a present, Basic programming on Atari, Manic Miner and Jet Set Willy on Amstrad CPC 64, Defender of the Crown, printing with C 64, desktop publishing with Atari 520 ST and Calamus, testing the first website in 1993, using UUCP to split files into emails, drawing maps with Java Applets in browser, 17 years old code as Java AWS Lambda, Cloud Development Kit - applying the Java knowledge to the clouds, Jakarta EE and MicroProfile in the clouds, in the clouds there are different possibilities, mobile sales application with esteh, the serverless Tomcat, hetzner provides hosting services, no vacuuming on databases, how to become an AWS Data Hero, attending airhacks.com at MUC airport, serverless quarkus in the clouds, OpenLiberty for Java EE, building AWS Lambdas with Quarkus, Infrastructure as Code and CDK with Java, the cloud has limits, self-mutating CodePipelines, every AWS service has well-documented limits, EC 2 spot instances for GraalVM compilations, plain Java SE for asynchronous Lambdas, Goran Opacic on twitter: @goranopacic, Goran's blog: madabout.cloud
An airhacks.fm conversation with Victor Orozco (@tuxtor) about: Cyrix 486 computer, disassembling Prehistorik 2 game, enjoying Dangerous Dave, starting programming in FoxPro, joining programming bootcamps, learning Visual Basic 6, starting to study Computer Science with the age of 16, studying in Guatemala City, starting to learn Java in 2005, from .net to Java, Sun Certified Programmer certification, human rights application with Apache Struts on Sun Java Application Server, getting the NetBeans DVD from Sun Microsystems, starting with NetBeans RCP, gentoo linux was the future, Central America has only three Java Champions, two Java Champions from Guatemala and they joined the bootcamp, writing code for Blackberry in Java and J2ME, enjoying Glassfish and Java EE 6 for backend development, going to Brazil and switching to ML, Scala and Spark, betting on Java EE, Jakarta EE, MicroProfile, JUG in Guatema is the oldest in the country, winning the Duke Choice Award for Duke Adventures, meeting Bruno Souza, checkout episode "#170 Java, OpenSource and the Brazilian Christmas" with Bruno Souza, "knowledge and clouds" - is nabenik in Mayan - victor's company, Java EE, Jakarta EE, MicroProfile are great platforms for building products and consulting, working on-premise openshift, AWS and Azure, working with Payara Micro, Quarkus on OpenShift, packaging old Java EE codes as AWS Lambda, Victor Orozco on twitter: @tuxtor, Victor's company: nabenik
An airhacks.fm conversation with Jürgen Albert (@JrgenAlbert6) about: C64 and Logo, 286, 486 then Pentium, starting with PHP, learning Java 1.4 and Java 5, studying in Jena - the optical valley, Intershop and Stephan Schambach, Intershop was written in Perl, writing eBay connectors with Java, Java Server Pages, Tomcat and Java Data Objects (JDO), Java Persistence API JPA, writing a J2ME app store, Using TriActive JDO TJDO, using Geronimo Application Server, working with Java EE, JBoss and Glassfish, starting Data In Motion company in 2010, building a statistics tool for Bundesamt fuer Risikobewertung, creating smartcove the product search and price comparison engine, building video supported therapy software with Java, parsing video streams with Java, Eclipse RCP, code reuse with OSGi and Gyrex, GlassFish and OSGi, modeling Eclipse Modeling Framework (EMF), Eclipse GMF and openArchitectureWare, the IDE wars, the meetup.com/airhacks message, modular system in long term projects, microservices vs. JARs, versioning bundles and plugins, package versioning, the chair of Eclipse OSGi Working Group, Sun started with OSGi, declarative OSGi services, there overlap between OSGI and Eclipse Plugin Development Environment, "#79 Back to Shared Deployments with Romain Manni-Bucau", Jürgen Albert on twitter: @JrgenAlbert6, Juergen's company: Data In Motion
An airhacks.fm conversation with Ed Burns (@edburns) about: expisode with Ed's first computer: "#161 SGI, NCSA Mosaic, Sun, Java, JSF, Java EE, Jakarta EE and Clouds" enabling Jakarta EE servers to run well on Azure, working with IBM and Oracle to support OpenLiberty on Azure and WebLogic on Azure, working with payara cloud, Azure Container Instances the cloud way of "docker run", JBoss EAP on Azure App Service, MicroProfile, Jakarta EE and Java EE application servers on Azure, Lift and Shift with kubernetes and Azure Kubernetes Service, Azure Container Apps - the sweet spot of ACI and ACR, cloud portability with Kubernetes, IaC with ARM Template, WebLogic on Kubernetes was using Bicep, "the complexity tax", Microsoft joins Java Community Process (JCP), Microsoft Build of OpenJDK, Azure Event Bus and Azure Service Bus, "#111 Java / Jakarta Messaging Service (JMS) on ...Microsoft Azure", Payara Cloud on Azure - the serverless server, OpenLiberty on AKS, JBoss EAP on Azure App Service, the Azure Service Connector, Azure Services as a Service -- the anti-corruption layer, Azure ExpressRoute and Azure Virtual Network, Event Driven Architectures and Azure Logic Apps, Ed Burns on twitter: @edburns
An airhacks.fm conversation with Jason Lee (@jasondlee) about: C-64, assembly and Basic, the talking ghostbusters game, a DOS screen saver, the Run Magazine, buying a 286, installing early version of PostgreSQL, starting with Pascal, C, COBOL and PHP programming, working for WalMart on Decision Support System (DSS), providing support for cable modems, the great US robotics modem, 36 kBs vs. 54 kbS speed, building a FoxPro C++ system for a medical company, starting with JBuilder and Java Swing 1.1 and JBCL, porting C++ to Java, the jbInit method, Eclipse's refactoring was great, Embarcadero and Inprise, writing SOAP with Apache Axis, first opensource contribution, working with Federal Aviation Administration, starting with Glassfish v2 and Java Server Faces, Java EE and MicroProfile - productivity by constraints, the annotation driven Java EE 5, starting at Sun Microsystems to work for Glassfish v3, working on Glassfish admin console, starting at Netsuite and coming back to Oracle, starting at RedHat on Wildfly, working on WildFly MicroProfile integration, adding telemetry support for WildFly 25, Jakarta EE: integration vs. implementation, WildFly runs on Java 17 and supports opentelemetry, micrometer vs. MicroProfile Metrics, airhacks.fm episode 140 with Erin Schnabel about Micometer, Metrics and Quarkus, WildFly 26 will suport Jakarta EE 10, bootable WARs, Jason Lee on twitter: @jasondlee, Jason's blog: jasondl.ee
An airhacks.fm conversation with Ed Burns (@edburns) about: Ti 99 4a with speech synthesis, Secrets of the Rockstars Programmer book, Apple 2c with word processing and laser mouse, Superman 2, collecting half cents as rounding errors, War Games and Tron, the Logo programming language with a turtle, enjoying playing trumpet, marching band and a binary trumpet, The Nullpointers Band, Fourier Transforms for music quantification at high school, just intonation and the key changes, equal temperement on piano, retuning the keyboard on the fly, applying at Sun Microsystems, Lighthouse Design and Objectivec-C, working at Silicon Graphics and the nice O2 workstation, working on NCSA Mosaic browser at NCSA, learning Pascal and C++ at the university, working on Common Client Interface on Mosaic Browser, inperson conference system, talent vs. grit, grit over talent, floyd marinescu started the theserverside.com, the Spyglas Browser, the SGI Cosmo and VRML, SGI IRIX operating system, commodity vs. boutique fights at SGI, joining Sun's Lighthouse Design group, building a Java-based productivity suite, building a multi-dimensional spreadsheet: quantrix, NextStep Appkits vs. Swing, the AOL Sun-Netscape alliance, OJI - Open Java VM Interface the SPI for Applets, Project Panama - the new JNI, the popularity of Struts was the motivation for JSF, Craig McLanaham and Amy Fowler started to work on JSF, JSF code name was moonwalk, Hans Muller and the Swing Application Framework (JSR-296), the Java Community Process passion, IETF and W3C are like JCP, "Innovation Happens Elsewhere" book, JSF and Spring XML-based dependency injection, ATG dynamo jhtml, JSF 2.0 composite components, JSF was a hot technology with multiple component implementations RichFaces, icefaces, PrettyFaces, Liferay, PrimeFaces and MyFaces, the initial JSF target was page-based corporate apps, the AJAX experience conference and Ben Galbraith, Martin Marinschek from Irian, Josh Juneau and the famous blog post, building a proprietary Java-based docker orchestration framework on top of Apache Mesos at Oracle, Java EE on Azure, riding the crest, Ed's journey from client to server to cloud Ed Burns on twitter: @edburns
An airhacks.fm conversation with Prof. dr. Matjaz Juric (@matjazbj) about: about KumuluzEE and the Duke Choice award, SOA had its problems, jetty is the core of KumuluzEE, Java EE fans building a lightweight runtime environment, JavaOne rejection, then winning the Duke Choice Award in 2015, KumuluzEE started with exploded deployments, KumuluzEE supported parts of Jakarta EE and fully MicroProfile from the beginning, now KumuluzEE support MicroProfile 3.3, KumuluzEE created an own configuration framework before MicroProfile, KumuluzEE supports etcd and consul, live configuration updates are supported, KumuluzEE listens to etcd changes, layered configuration approach is supported, KumuluzEE implements some MicroProfile APIs, KumuluzEE is one of the fastest runtime, quarkus is the main contender, event streaming and GraphQL are the most interesting KumuluzEE features, JPA-RS: JAX-RS mapping to EclipseLink / JPA, kumuluzee-rest is similar to JPA-RS, Remote Procedure Call (RPC) is supported with kumuluzee-rpc module, RMI over gRPC, sending classes over the wire is no more supported, Apache Johnzon supports Java Record to JSON serialization, MarshalledObject is great for agent implementation, feature flags are a semantic extension of configuration, KumuluzEE support feature flags with the kumuluzee-feature-flags module, flagr provides feature flagging, kubernetes with istio makes dynamic JAX-RS endpoint obsolete, automation of canary release deployments, KumuluzEE translates specific DSL configuration to istio configuration, kumuluzee-fault-tolerance is MicroProfile compatible, kumuluzee-logs sends logs to various logging frameworks and drivers, energy trading with decentralised blockchain approach like ethereum, episode 145 with Kevin Wittek about ethereum, KumuluzEE is opensource, Kumuluz Platform adds additional features, the larger the module, the lower the overhead in the clouds, Java should not compete with Python and Javascript, Prof. dr. Matjaz Juric on twitter: @matjazbj and at University of Ljubljana
An airhacks.fm conversation with David Blevins (@dblevins) about: Code Generation with bash, bash is your best friend, scripting as documentation, learn first, then automate, an opportunity to work on an EJB container, working on EJBOSS, working with the great Richard Monson-Haefel, co-founding openEJB with Richard, bluestone and gemstone servers, exolab was an incubator, openJMS, openEJB and castor, working with Apple to integrate openEJB with Apple's WebObjects, openEJB on Apple's WebObjects box, from experience to cash, the concept of isolated containers in openEJB, Dain Sundstrom wrote CMP for JBoss, Rickard Öberg started at openEJB for two weeks, creating Geronimo in 2003 as competitor to JBoss, announcing Geronimo at theserverside.com, Geronimo was over engineered, good idea at a bad time is a bad idea, Convention over Configuration vs. explicit configuration, openEJB's Java Serialization was faster than WebLogic's T3, Geronimo's configuration was not portable, joining gluecode, gluecode was sold to IBM, Jason van Zyl was the creator of Maven, Jason van Zyl created Sonatype, jelly - the executable XML, Maven 2 rollout was tested with openEJB, switching from codehouse to Apache, 600 people were working on WebSphere, Dan Allen was working on arquillian, Arquillian used internally openEJB, JBoss 7 became Wildfly, creating TomEE after JavaOne 2010, TomEE stopped consulting, tomitribe provides support for TomEE, Tomcat, ActiveMQ, TomEE 9 starts in 2 seconds, TomEE passes the TCK with 64MB RAM, TomEE lost access to TCK in 2013 before Java EE 7, TomEE got access in December 2019, TomEE is working on MicroProfile 4.0, TomEE uses Apache Johnzon JSON-P, TomEE uses Apache projects to implement Jakarta EE and MicroProfile specification, TomEE uses BeanValidation for JWT validation, using BeanValidation for authorization with custom data in JWT, Tribestream - the API Gateway, David Blevins on twitter: @dblevins and David's company: tomitribe
Deploy Friday: hot topics for cloud technologists and developers
Our guests today Rudy de Busscher, on the Payara Sales team, and Fabio Andres Turizo, a Payara Engineer, speak with us about the importance of standards, what Jakarta EE offers developers, and using Payara. Defining PayaraPayara is a cloud-native, open source middleware platform that's both Jakarta EE and MicroProfile compatible. It comes in two versions; community and enterprise. With the enterprise version, you get access to partners in the community, and very long-term support — 10 years! Payara supports on-premise, in the cloud, and hybrid Jakarta EE applications.Standards mean interoperability and sustainabilityBoth Rudy and Fabio are big on standards, especially when it comes to microservices development. Fabio says, “Standards are important for multiple reasons — but I think the main one is variety. Where there's a body for standards, there's room for anyone to develop an implementation of that standard. And you as a developer have the option to choose what it is.”There may be many reasons you can't continue using a specific technology. In those cases, Fabio says, “Following a set of standards guarantees that you can quickly migrate to another vendor, and that migration is easier because both vendors are following the same standard. The process becomes more pain-free.”Payara in the communityPayara is a successor to the now-defunct Glassfish. But Payara has some things Glassfish did not, according to our guests:Higher code qualityConsistent bug fixes, updates, and improvementCompatibility with MicroProfile and Jakarta EETooling for use in any development environment More comprehensive documentation lies ahead!One of Payara's goals for 2021 is to make their documentation even more inclusive and welcoming. Fabio says, “One of the main plans for the year is to integrate everything — make it easily readable and more intuitive. If you're just starting out, or you're a mid-level engineer trying to understand the nuances of how to operate Payara properly, then you will have all the tools you need in the documentation.”Try Payara on Platform.sh: https://platform.sh/marketplace/templ...Platform.shLearn more about us.Get started with a free trial.Have a question? Get in touch!Platform.sh on social mediaTwitter @platformshTwitter (France): @platformsh_frLinkedIn: Platform.shLinkedIn (France): Platform.shFacebook: Platform.shWatch, listen, subscribe to the Platform.sh Deploy Friday podcast:YouTubeApple PodcastsBuzzsproutPlatform.sh is a robust, reliable hosting platform that gives development teams the tools to build and scale applications efficiently. Whether you run one or one thousand websites, you can focus on creating features and functionality with your favorite tech stack.
So first, a big Welcome for the "Enterprise Java Newscast" to joining the "Pub House Network", a series of podcast and content created by developers for developers. Everyone is happy about the partnership and we can expect Enterprise Java Newscast...
Евгений Борисов о пчелах на слайдах, айбирнейте и спринге 00:00:00 Как начал выступать на конференции? 00:07:25 Что такое айбирнейт? 00:08:27 Почему пчела это BeanFactory, а муравей - BeadDefinitionReader? 00:10:09 Почему описание биографии не менялось 10 лет? Где работает сейчас? 00:12:50 Кладбище за окном директора 00:14:27 Почему рассказывает про JavaEE израильтянам? 00:15:15 Как отличается аудитория в разных странах? 00:16:58 Как перешел на Спринг? 00:19:10 Когда первый раз написал на Спринге? Как рекламировать коллегам спринг с помощью пива 00:21:55 Почему Спринг остается популярным? 00:24:02 Знакомство с Juergen Hoeller 00:26:00 Железный купол написан на Java 00:27:25 Почему доклада Спринг-Потрошитель такой популярный? 150тысяч просмотров на youtube 00:28:20 Свой youtube-канал или конференция 00:31:07 Сколько времени занимает подготовка одного доклада? 00:33:14 Реквием программиста https://youtu.be/Qypw6ho5wGQ 00:34:32 Про работу в NAYA Technologies 00:42:00 IntelliJ IDEA vs Eclipse? 00:44:34 Как учить программированию своих детей? 00:46:40 Как все успевать? 00:46:58 История про хакатон с Барухом под JavaME и девочку в белом платьице 00:50:30 Стоит ли ходить на воркшоп? Телеграм канал https://t.me/javaswag Чат https://t.me/javaswag_chat Сайт https://javaswag.ru Подкаст записан на конференции https://2019.rigadevdays.lv/ Голос подкаста - https://t.me/volyx Звук подкаста - https://t.me/pahaus
Neste episódio vamos falar sobre o Java EE, Jakarta EE e toda essa bagunça de nomes do mundo Java: pra onde está indo a tecnologia, a comunidade e a especificação? E pra essa conversa trouxemos dois javeiros hardcore! Participantes: Paulo Silveira, o host javeiro do podcast Bruno "Javaman" Souza, javeiro desde 1995 Otávio Santana, desenvolvedor na Tomitribe Maurício "Balboa" Linhares, o co-host que quer ser convencido a usar Java de novo Links: Spring JCP Jakarta EE Livros de Java da Casa do Código Cursos de Java da Alura Tomitribe Produção e conteúdo: Alura Cursos online de Tecnologia Caelum Ensino e Inovação Edição e sonorização: Radiofobia Podcast e Multimídia
EE4J and Java EE, the adoption of Agile, Machine Learning, Polymer, Docker, PrimeNG, Bootstrap, Arquilian, and more.
What an eventful time for being a Softare developer. We got a Meltdown, and a Spectre in our field to begin with, and we also have some interesting news brewing from Payara. But most importantly we secured an interview with no other than Eclipse...
Microservices, MicroProfile, Java EE, Wildfly, ActiveMQ, KeyCloak, OpenShift, and Docker with special guest Steven Pousty, Head of Developer Advocacy for Red Hat. They also discuss Polymer with TypeScript, Angular 5, Getting Things Done, the Pomodoro Tech
So it's our anual JavaOne Debrief. After landing at the conference we got to take a look at what's brewing behind Oracle. With our special guest we dive into the big Red plans for EE, the answer from Oracle on Lambdas (hey everyone is...
All things Java, Java EE, and JavaOne with special guest JavaOne Rockstar and Java Guardian Reza Rahaman. They also discuss Microprofile, Angular 5, and more.
Kito, Danno, and Ian discuss the Equifax hack (caused by an unpatched version of Struts), news from the Polymer Summit, Oracle's donation of Java EE to Eclipse, Docker in-depth, and more.
Oh my gosh! When it rain it pours. We have tons of news for this podcast, starting with the actual release of Java 9 (wow, it is finally OUT!). And on the toes of that we have the news that Java EE is going to be moving to the Eclipse Foundation (and...
This week on the podcast, Dan shares how to disable PSWATCHSRV and how the Fluid Navigator broke. Kyle finds a bug with Facter. Then Dan and Kyle discuss default build settings in App Designer and what is "safe by default" when building projects. Show Notes Psadmin.conf Thank You @ 3:30 Java EE has a new home @ 6:30 SublimeText 3.0 @ 8:15 Elasticsearch and PeopleTools 8.55.19/8.56.04 @ 9:00 Change Password, Fluid, Homepages @ 15:45 Disabling PSWATCHSRV @ 22:00 Breaking the Navigator and the Node Network @ 32:00 Facter and FQDN Bug @ 39:00 Default Build Settings @ 46:45
Whew, it has been an intense month for IT in general! We dive in our updates (as we are nearing JavaOne), and check on Java 9, Spring 5 and Java EE. After that we dive into IBM's delayed project (and it's owning of 78 million back to the state). We...
Kito and Danno discuss Google I/O, PWAs, Polymer, Java EE 8, JavaOne, testing, TypeScript, augmented reality, Kotlin, Java 9, and more.
Oh boy, so we dive into this episode figuring out what's going on with Java EE 8 (and 9), pay our respects to java.net (it's now decommissioned), dive into Kotlin (this one seems to stick), and then discuss how JS is not as wild-west as it used to be...
Kito and Danno discuss JSF, Polymer, BootsFaces, Java EE 8, microprofile.io, AWS S3 going down, and more. UI Tier Java EE 8 , , Oracle, etc. Oracle has committed to releasing Java EE 8 by middle of the year Persistence Tier Discussion:...
E a plataforma Java também vive! Sim, houve alguns problemas e demoras, e a comunidade não ficou muito contente com a velocidade da plataforma pós Java 8. Como vai a versão 9? Como vai o Java EE? O que podemos esperar? Participantes: Paulo Silveira, host do hipsters, javeiro quando era menino Mauricio Linhares, o cohost que tá enferrujado no Java Alberto Souza, o fanático do Spring Michael 'Mister M' Nascimento, o cara que até dá talks com o James Gosling! Links citados no episódio e extras: JEPs (mini specs) do JDK 9 Projeto Jigsaw Improving, empresa que tem como um dos líderes o Michael E conheça o curso de Java 8 que inclusive foi feito pelo host do hipsters! Produção e conteúdo: Alura Cursos online de Tecnologia - https://www.alura.com.br === Caelum Ensino e Inovação Edição e sonorização: Radiofobia Podcast e Multimídia
It was a great JavaOne, full of news and mystery. Netbeans becomes part of Apache (or at least it's on its way to be), and Oracle finally revealed what their big plan is for Java EE 8 (and asking about 9)! Do we hang up the "Mission Accomplished"...
In this episode we talk about the changing landscape of Java. Oracle apparently is rebooting JavaEE! But what does that mean? especially with Microprofile.io efforts? Also, Oracle is planning to "remove" CMS on a future version of Java. Is G1 really...
"Legacy is coming", is the call of those that are Guarding Java EE. The Java EE Guardians started a Change.org petition (and I Signed it) to get Oracle to re-engage in the Java EE space. Are there alternatives? What is plan B? Can the community take...
Kito, Daniel, and special guest Java Champion Arun Gupta discuss a variety of topics, including Docker, Kubernetes, the future of Java EE, Couchbase, the impact of removing a popular NPM package, health and fitness, and more.